Dialog - mit zurück<->weiter (Wizard)
-
Hallo!
Ihr kennt alle diese Dialoge, die man bei Installationen oder
so ziemlich allen Assistenten hat, wo es einen "weiter" bzw. "zurück"-Button
gibt.Ihr gebt eure Einstellungen ein, klickt auf "weiter" und gebt die nächsten
Einstellungen ein...Alles scheinbar im gleichen Fenster. Nur die Steuerelemente
scheinen sich zu ändern. Also, alsob die Seite gewechselt hätte.Wie setzt man sowas um? Muss ich auf einem Dialogfeld alle Steuerelemente hinterlegen und nacheinander sichtbar/unsichtbar schalten (was gibt das für ein chaops!)? Oder wie geht man sowas am besten an?
mfg
Erikson
-
Nein, z.B. Eigenschaftsfenster ( http://www.henkessoft.de/C++/MFC/mfc_einsteigerbuch_kapitel6.htm ) oder mehrere Dialoge, die man nacheinander durch- bzw. rückschaltet.
-
Wizard Modus in CPropertySheet mit entsprechenden CPropertyPage's.
http://msdn2.microsoft.com/en-us/library/6z4twbax(d=ide).aspx
CPropertySheet sheet; // CMyPage1 and CMyPage2 are derived from CPropertyPage CMyPage1 page1; CMyPage2 page2; sheet.AddPage(&page1); sheet.AddPage(&page2); sheet.SetWizardMode(); sheet.DoModal();
-
Schau dir (in der MSDN) mal CPropertySheet und CPropertyPage an. Damit kann man entwender einen Dialog mit mehreren Tabs erstellen (Beispiel) oder mit der Funktion SetWizardMode auch einen Wizard (so heißen die Dialoge die du meinst). (Beispiel)
CPropertySheet in der MSDN: http://msdn2.microsoft.com/en-us/library/d3fkt014(VS.80).aspx
Gruß Brainiac
EDIT: Zu spät...
-
Das wars was ich gesucht hab
-
Und wie kann man das als Hauptdialog machen? Also die Proppage als
Hauptanwendung.
-
Du ersetzt einfach Deinen Main Dialog durch die von CPropertySheet abgeleitete Klasse.
-
Alle glücklich hier? Ich würds dann mal in die FAQ schieben.
-
Alle glücklich! Kann rüber Meister!