Forum: PC-Programmierung MFC "Datei öffnen", fertige Klasse?


von Patrick B. (p51d)


Lesenswert?

Hallo miteinander

Ich hab einmal ne Frage: Gibts das Datei öffnen Klasse? Weil ich habe 
mich gefragt, ob das wirklich jedesmal neu programmiert wird. Wenn ich 
in irgend einem Programm eine Datei öffnen möchte sehen die Formen immer 
gleich oder sehr ähnlich aus.

Hoffe ihr könnt mir da weiterhelfen
falls ihr nicht ganz genau wisst, was ich meine.. nur fragen.
MFG
Patrick

von Vlad T. (vlad_tepesch)


Lesenswert?

schreib dir doch eine.
GetOpenFilenName und GetSaveFileName gehören ja noch in die einfacher zu 
verstehenderen WinAPI-Funktionen

von Klaus W. (mfgkw)


Lesenswert?

sowas?
http://msdn.microsoft.com/en-us/library/dk77e5e7(VS.80).aspx

Ansonsten bitte eine verständliche Frage formulieren....

von Vlad T. (vlad_tepesch)


Lesenswert?

also bevor ich mit solchen kruden MFC-Klassen arbeiten würde, würde ich 
mir das ganze selbst kapseln.

Ich würde eine Klasse so aufbauen:
1
FileDialog();
2
3
public:
4
void addFileNameTemplate(string template, string description);
5
setDefaultDir(string defaultdir);
6
7
/** returns empty string if no valid file was selected*/
8
string getOpenFileName();
9
10
/** returns empty string if no valid file was selected*/
11
string getSaveFileName();

eventuell auch sowas, um die Abbruchbedingungen besser handlen zu 
können:
1
enum FileDLGStatus{... };
2
FileDLGStatus getOpenFileName(string &o_selectedFile);

von Patrick B. (p51d)


Lesenswert?

Klaus Wachtler schrieb:
> sowas?
> http://msdn.microsoft.com/en-us/library/dk77e5e7(VS.80).aspx

genau sowas hab ich gesucht. Danke

Vlad Tepesch schrieb:
> also bevor ich mit solchen kruden MFC-Klassen arbeiten würde, würde ich
> mir das ganze selbst kapseln.

Das nicht alles auf der Welt Perfekt ist, weiss ich, aber mir wurde von 
einem CEO (arbeitet nebenbei als C Lehrer) beigebracht, dass man 
"wirtschaftlicht" denken soll, also wozu viel Zeit in etwas investieren, 
wenns schon exisiert?
Um beim Motto "wieso das Rad zweimal erfinden" zu bleiben.
Trifft jetzt vielleicht nicht ganz deine Ansichten...

von Vlad T. (vlad_tepesch)


Lesenswert?

wenn du aber die Zeit mit einrechnest, die du bei jeder Benutzung länger 
brauchst, weil du bei jeder Benutzung wieder in die Refenrenz schauen 
musst und dich um die Verwaltung des Speichers selbst kümmern musst oder 
hinterher Leaks oder andere Bugs suchst, dann hat sich die Stunde 
schnell rentiert, die man in eine vernünftige Kapselung dieser 
Funktionen steckt.

Am wirtschaftlichsten ist es wahrscheinlich, sich in ein 
plattformunabhängiges GUI-Framework mit vernünftiger c++ Schnittstelle 
einzuarbeiten (zB QT)

von Klaus W. (mfgkw)


Lesenswert?

zu Qt: ACK

Geht viel einfacher, problemärmer und schneller als MFC.
Das geht sogar so glatt, daß es Spaß macht, während ich mich
über MFC bisher nur geärgert habe.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.