wxWidgets:: Ja - Nein - Dialog



  • Sehr geehrtes Forum, wie kann ich mit den wxWidgets einen einfachen Ja - Nein - Dialog erstellen?

    Mit einem Titel und einen Text.
    Koordinaten und Größe sollten vom wxFrame abhöngen,
    der dialog sollte zentriert sein (innerhalb des fensters),
    und die größe egal.



  • Du kannst einfach die Funktion wxMessageBox mit dem Parameter wxYES_NO benutzen. Dort kannst du allerdings nicht Größe und Position beeinflussen. Wenn du das unbedingt brauchst musst du dir mit wxDialog selbst etwas zusammenbauen (Gleiche vorgehensweise wie bei wxFrame einfach Klasse ableiten und Steuerelemente platzieren).



  • wxMessageDialog *dial = new wxMessageDialog(NULL,"Möchten Sie SimpleEditor wirklich beenden?","Beenden", wxYES_NO | wxICON_ERROR);
    
    	int result = dial.ShowModal();
    
    	if (result == wxID_NO)
    	{
    // .. Schließe Dialog, doch wie?
    }
    	else if (result == wxID_YES)
    	{
    		Close(true);
    	}
    

    Bei meinem VS2010 geht dieser Code nicht, bei

    int result = dial.ShowModal();
    

    Fehlermeldung:

    1>f:\c++ projekte\simpleeditor\simpleeditor\simpleeditorwindow.cpp(51): error C2228: left of '.ShowModal' must have class/struct/union
    1> type is 'wxMessageDialog *'
    1> did you intend to use '->' instead?

    Und wie kann man einen Dialog schließen, mit destroy?
    Bei mir geht das nicht.

    Bitte um hilfe, danke
    Developer_X



  • Da es ein Zeiger ist musst du in Zeile 3 den . durch ein -> ersetzen.



  • danke sehr,


Anmelden zum Antworten