Upload
gabriel-gloeckner
View
231
Download
11
Embed Size (px)
Citation preview
• Was macht er?
• Wie funktioniert er?
• Wie sieht er aus?
CFileDialog
CFileDialog gibt uns eine leichte und bequeme Methode zur Hand, den Speicherort einer Datei zu bestimmen, egal ob zum Speichern oder Laden einer Datei. Der Dialog selber speichert oder lädt jedoch nichts, er liefert nur einen String mit dem kompletten Pfad der ausgewählten Datei zurück.
Jeder kennt das Fenster, das normalerweise auftaucht, wenn man unter Windows die Option „Speichern unter…“ auswählt, das ist ein CFileDialog…
CFileDialog
Diese Parameter kann man dem Dialog übergeben, bis auf den ersten sind sie alle optional:
bool bOeffnenSchliessen = FALSE/TRUE; //Erstellt eine Instanz von CFileDialog, entweder als Öffnendialog //(TRUE) oder als Speicherdialog (FALSE)
CString sDefaultExtension = „bmp“; //Standardendung für die zu wählende Datei. Diese Endung wird automatisch beim Speichern //angefügt, sollte der User keine eigene Endung wählen.
CString sPfad = “c:\\datei.bmp“; //Der Dateiname, der beim Aufrufen des Dialogs automatisch angezeigt wird. Man landet auch //automatisch im betreffenden Ordner. Jedoch MUSS eine Datei (ob existent oder nicht) angegeben sein, //ein reiner Pfad reicht nicht!
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT//Spezielle Flags, die weitere Bedingungen definieren, z.B. das beim Überschreiben einer Datei eine Meldung kommt.
CString sFilter = “Bilder(bmp,gif)|*.bmp;*.gif|Alle Dateien|*.*|“; //Filterregeln, die definieren, welche Dateien im Dialog angezeigt werden können („Dateityp“).//In diesem Fall ist es z.B. alles mit Endung *.bmp, *.gif und Alle Dateien.
CFileDialog Dateidialog(bOeffnenSchliessen,sDefaultExtension,sPfad,dwFlags,sFilter);
if(Dateidialog.DoModal() == IDOK) //Der übliche Aufruf des Dialogfensters
CString sDateipfad = Dateidialog.GetPathName() //Auslesen des gewählten Dateipfads
CFileDialog
bOeffnenSchliessen
sPfad
sFilter
OFN_OVERWRITEPROMPT