Speichern...
-
Hi,
ich hab einen Algorithmus der etwas einliest und speichert.
Dafür hab ich dann in meiner SDI-Anwendung Speichern unter und Öffnen angepasst.
Mit Öffnen hat das geklappt:
Hier wird ein CFileDialog geöffnet, etc... und die Daten geschrieben
Bei Speichern unter klappt nichts.
Das erkenne ich daran, dass ich einen Filter eingebaut habe, der aber nicht angezeigt wird, also "*.dat"Ist folgendes richtig um eine Funktion zuzuweisen:
in Ressourcen->Menu->IDR_MAINFRAME bei "Speichern unter..." in den Class Wizard gehen und dort "Command" eine Funktion (die ist bei mir in der Klassen "CMainFrame") zuzuordnen?Der Name der Funktion lautet:
void CMainFrame::OnFileSaveAs()
und das ist so etwa der Inhalt:
CFileDialog openDialog( true , NULL , NULL , OFN_HIDEREADONLY , szFilter , NULL ); id = openDialog.DoModal(); Path = openDialog.GetPathName(); daten->schreibeSet( Path.GetBuffer( Path.GetLength() ) );
Warum ignoriert der die Funktion und startet sein Standard-Speichern-Fenster?
Danke für jede Hilfe,
Tobias[ Dieser Beitrag wurde am 01.03.2003 um 20:00 Uhr von tobis79211 editiert. ]
-
Hi,
probier mal folgendes als Filter:szFiler = "dat Dateien (*.dat)|*.dat||";
mfg TakeItEasy!
-
hi,
das hab ich auch getan, hat aber nicht geklappt!
Ich hab jetzt einfach mal die ID von Speichern und Speichern unter umbenannt, dann hat es geklappt!
...seltsam...
Gruss, Tobias
-
Eigentlich musst du nur CDocument::Serialize überschreiben.
Öffnen & Co. wird doch schon automatisch gemacht. (Außer du nutzt die Serialisierung nicht)