Dialog im selben Dialog öffnen
-
Hallo,
ich hätte da eine Frage und würde mich über jegliche Denkanstöße freuen.
Mein Problem ist es, wenn ich ein Menü erstelle und es einbinde, und dann ein Ereignishandle zu dem Menü erzeugen will, wie mache ich das, dass sich meine Hauptoberfläche, also mein Startdialog sich verändert? Ich will nicht mit DoModal einen neuen Dialog aufrufen, sondern durch klick auf einen Menüpkt, sich mich Hauptfenster der dialogbasierten MFC Anwendung sich verändert?
Über jede Hilfe würde ich mich sehr freuen.~Zanerva
-
werd mal ein bisschen konkreter, was du genau verändern willst.
-
du darfst halt nur teilweise mit dem ressourceneditor arbeiten. den rest musste denn halt mit ctreate, showwindo usw aus- und einblenden.
Esco
-
@schuri: Ich meinte damit, wenn man jetzt zum Beispiel im Hauptdialog ein Editfeld hat, und klickt jetzt auf einen Menüpkt, das sich dann der hauptdialog verändert. Oder kann ich durch aufruf von speziellen funktionen steuerfelder an einer besimmten stelle hinzufügen oder löschen?
@Esco: Wie meinst du das: Nur teilweise mit dem Ressourceneditor arbeiten?
Liebe Grüße,
Zanerva
-
Zanerva schrieb:
Oder kann ich durch aufruf von speziellen funktionen steuerfelder an einer besimmten stelle hinzufügen oder löschen?
jo, genau os ist es. wie die methoden heissen, siehst du ja oben.
du kannst alle von cwd abgeleiteten (alle steuerelemente) instanzen mittels showwindow true/false ein und wieder ausblenden.Esco
-
Die einfachste Variante ist: du hast alle controls da, und zeigst/versteckst sie je nach bedarf mittels ShowWindow(SW_SHOW / SW_HIDE).
Nächste Möglichkeit: wie bereits erwähnt, neue Elemente mit CreateWindow / DestroyWindow be ibedarf erzeugen
Variante 3: Du schaltest unterdialoge um (ähnlich einem property sheet, aber ohne dieReiter)
Variante 4: Du schaltest den ganzen Hauptdialog um. Kann evtl. besser sein als V.3, ist aber eher exotisch
-
ok danke leute, ihr habt mir sehr geholfen