nicht modaler Dialog
-
Hallo,
ich habe ein Problem mit meinem nicht modalen Dialog.
Zum Hintergrund: Ich habe einen Haupt-Dialog, in dem der Benutzer verschiedene
Einstellungen auswählt, dann auf einen Button drückt und anschließend
öffnet sich ein weiterer Dialog mit den Ergebnissen ( In einer TreeViewControl).
Dieser zweite Dialog flackert aber nur kurz auf und ist dann sofort wieder weg.Ich habe den Ergebnis-Dialog folgendermaßen erzeugt (in einer Methode des
Haupt-Dialoges://neuen dialog erzeugen dcResultDialog rdialog; rdialog.Create( IDD_RESULT_DIALOG ); rdialog.ShowWindow( SW_SHOWNORMAL ); //hier wird die Wurzel der Liste erzeugt rdialog.fillList(); while( 0 <= ( m_listCtrl.GetCount()-1-i ) ) { ..... // hier werden weitere einträge in den ergebnis dialog eingetragen filefinder.findFiles( m_results, sysFile, recurse, rdialog ); ++i; }
Kann mir jemand sagen, wie ich mein Problem beheben kann? Bzw. wo das Problem liegen könnte?
PS: Zu Anfang war der Ergebnis-Dialog modal, was ich dann aber abgeändert habe...
Danke,Gruß Amalthea
-
void func() { // neuen dialog erzeugen - auf dem stack dcResultDialog rdialog; rdialog.Create( IDD_RESULT_DIALOG ); rdialog.ShowWindow( SW_SHOWNORMAL ); //hier wird die Wurzel der Liste erzeugt rdialog.fillList(); while( 0 <= ( m_listCtrl.GetCount()-1-i ) ) { ..... // hier werden weitere einträge in den ergebnis dialog eingetragen filefinder.findFiles( m_results, sysFile, recurse, rdialog ); ++i; } // stack wird abgebaut - dialog futsch }
-
Hallo,
danke für den Tipp.
Ich hab den Dialog jetzt mit
dcResultDialog* rdialog = new dcResultDialog;
erzeugt (und beim Beenden auch wieder mit delete gelöscht). So gehts
Gruß, Amalthea
-
Und wann machst du das delete???
Sonst ist das Ding ja noch ewig im Speicher.
-
Hallo,
ich mach das delete, wenn der User den Button OK drückt und sich der Dialog damit schließt.
Gruß,
Amalthea