PDA

Visualizza la versione completa : [C++] Finestra CFileDialog e ottenere la scelta dell'utente


ermurena
05-07-2007, 15:44
Salve a tutti,

in un codice sorgente ho una chiamata alla CFileDialog di questo tipo:

---------------------

char strFilename[] = {"Bitmaps (*.bmp)|*.bmp|TIFF (*.tif)|*.tif|All files (*.*)|*.*||" };

pDlg=new CFileDialog(FALSE,NULL,Filename,NULL|NULL,strFilen ame,this);

----------------------

ma quello che non capisco è come faccio a sapere la scelta fatta dall'utente.. BMP o TIFF ?

perchè a seconda della scelta effettuata devo far svolgere operazioni diverse.


Grazie!!

MItaly
05-07-2007, 18:02
Una volta ottenuta la stringa contenente il percorso e il nome del file estrai da essa l'estensione.

oregon
05-07-2007, 18:41
L'utente potrebbe scegliere anche qualcosa di diverso ... le estensioni sono proposte non obbligate.

Puoi anche avere un nome di file senza estensione (e quello potrebbe essere comunque una immagine valida di uno dei due tipi!)

ermurena
06-07-2007, 09:13
cioè non c'è modo di sapere se l'utente ha scelto BMP o TIFF
in modo diretto?

MItaly
06-07-2007, 13:27
No, anche perché l'utente comunque può digitare manualmente l'estensione che vuole. E comunque, cosa c'è di così difficile nel metodo che ti ho proposto?

oregon
06-07-2007, 13:39
Originariamente inviato da ermurena
cioè non c'è modo di sapere se l'utente ha scelto BMP o TIFF
in modo diretto?

Ti ripeto che non e' questo lo scopo del Dialog ... con quello, si sceglie un file "possibilmente" un BMP o un TIFF ma non "necessariamente" ...

Quindi, non devi dare nulla per scontato e devi esaminare tu, non solo l'estensione del nome del file (se c'e') ma anche il vero tipo di file ...

Loading