Problem bei Einbindung von Dialogfeldern in SDI-Anwendung
-
void CChildView::OnVerteilungenBinomial() { // TODO: Code für Befehlsbehandlungsroutine hier einfügen //BinomialDialog öffnen BinomialDialog dlg("Binomial");<---- dlg.DoModal(); }
Fehlermeldung:
error C2664: 'BinomialDialog::BinomialDialog' :
Konvertierung des Parameters 1 von 'char [9]' in 'class CWnd *' nicht moeglich
Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
-----------------------------Will einfach, dass sich nach Menüauswahl ein Dialogfenster öffnet. Die Klasse von diesem ist "BinomialDialog". Kann mit der Fehlermeldung nichts anfangen, weiß leider auch nicht ob ich den Code in die richtige Datei eingefügt habe (Über Klassenassistennt und dann nach Vorlage ergänzt), ist jedoch meine einzige mit "View" im Namen, und das Buch schreibt was von "View". Diese Datein/Klassen sind bei mir jedoch nicht vorhanden, da ich auf die Dokument/Ansicht Struktur verzichtet habe.
Wer kann mir einen Denkanstoß geben?
Ist auch ziemlich dringend!
-
Schreib einfach:
[cpp]BinomialDialog dlg(NULL);[/cpp]
oder gleich
[cpp]BinomialDialog dlg;[/cpp]
Der Parameter, für den du den String "Binominal" angibst (wieso eigentlich???) heißt eigentlich CWnd pParent* und ist standartmäßig NULL. Er gibt das Parent-Window des Dialoges an, im Normalfall brauchst du das aber nicht explizit angeben, da kümmert sich die MFC dann drum (Ich zumindest hab das noch nie gebraucht).
Gruß
Brainiac
-
Vielen Dank, werde es gleich ausprobieren.
Ich habe das nur dorthin geschrieben, weil es in dem Beispiel (Unterschied habe ich erwähnt) so drinstand (natürlich mit ner anderen Bezeichnug). Da ich keine Ahnung habe was dies bewirkt und auch nicht erklärt wurde, habe ich es halt übernommen.