VS 2008, MFC: Add OnInitDialog - wie?
Dies ist mein Erster MFC-Anwendung Weg von VC6, und ich fühle mich ein wenig dumm:
Wie füge ich die OnInitDialog-handler?
(Ich weiß, wie ich Sie manuell hinzufügen, aber das ist ein Schmerz im langen Lauf).
Doppel-Klick auf den dialog - nichts.
rechten Maustaste auf das Dialogfeld "Ereignishandler hinzufügen" ist deaktiviert.
Eigenschaften - Nachrichten hat die "normalen" Nachrichten, aber nicht WM_INITDIALOG
Eigenschaften - Ereignisse enthält nur Meldungen von enthaltenen Steuerelemente
rechts-klicken Sie im class view - "Hinzufügen.." hat nur Funktionen und Variablen
kopfkratz
[edit] d ' Oh - es ist eine virtuelle Funktion in der MFC, aber trotzdem...
InformationsquelleAutor der Frage peterchen | 2009-06-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fühle mich nicht dumm, es hat mich für immer, um dies herauszufinden, als ich das erste zog von VC6 auf VS2008!
Sowieso, und auch für meine eigene Referenz, hier sind die Schritte für das hinzufügen einer dialog-box und überschreiben der
OnInitDialog
Methode:IDD_MYDIALOG
.CMyDialog
wählen SieCDialog
als Basis-Klasse, und drücken Sie dann Finish. Dies erzeugt Dateien mit den NamenMyDialog.cpp
undMyDialog.h
und Sie dann Ihrem Projekt hinzuzufügen.Überschreiben der
OnInitDialog
Methode in derCMyDialog
Klasse:MyDialog.h
.class CMyDialog : public CDialog
. (Die Spitze des Eigenschaften-Fenster sollte zeigen, "CMyDialog VCCodeClass" - dies ist wichtig, weil die Eigenschaften Fenster ist sehr kontextsensitiv, und Sie erhalten verschiedene Optionen, je nach der Position des Cursors im editor.)OnInitDialog
.CMyDialog::OnInitDialog
Funktion.Ich hoffe, das hilft!
InformationsquelleAutor der Antwort ChrisN
Es scheint, dass Sie nicht einmal öffnen Sie die header-Datei und Durcheinander herum platzieren Sie den cursor... Nach creatingthe-Klasse markieren Sie die Klasse in der Klassenansicht Bereich und Sie können ändern, überschreibt/Nachrichten/Ereignisse in der Eigenschaft, wie oben beschrieben.
InformationsquelleAutor der Antwort wayne