Dialg anzeigen Problem



  • Hallo!

    Ich habe als Resource mit VC 6 einen Dialog erstellt. Nun möchte ich diesen anzeigen, wenn man auf einen Menü-befehl klickt. Funktioniert aber nicht 😞

    // Das wird aufgerufen, wenn man auf den Menü-Befehl klickt
    DialogBox(g_hInstance, MAKEINTRESOURCE(IDD_OPTIONS), g_hWindow, OptionProc);
    
    // Beim Kompilieren kommt dieser Fehler:
    /*C\...\Flitz.cpp(65) : error C2664: 'DialogBoxParamA' : Konvertierung des 
    Parameters 4 von 'long (struct HWND__ *,unsigned int,unsigned int,long)' 
    in 'int (__stdcall *)(struct HWND__ 
    *,unsigned int,unsigned int,long)' nicht moeglich
            Keine Funktion mit diesem Namen im Gueltigkeitsbereich stimmt mit dem 
    Zieltyp ueberein                              */
    
    // Hier meine Definition von OptionProc:
    LRESULT CALLBACK OptionProc(HWND hWndDlg, unsigned int uiMessage, 
    			WPARAM wParam, LPARAM lParam)
    // OptionProc idt über Window-Proc definiert
    


  • Die DialogProc gibt INT_PTR zurück und nicht, wie das bei Dir ist, HRESULT.



  • danke, jetzt geht es.

    Hab aber noch ne Frage:
    Was ist der Unterschied zwishcne modalen und Nichtmodalen Dialogen?



  • Noch ne Frage zu Dialogen:
    Wie kann ich nach dem Beenden des Dialoges testen, also wenn man OK geklickt hat, welcher Radiobutton aktiviert ist, wenn ich nur seine ID kenne?

    Und wie kann vor dem Anzeigen des Dialoges, nach WM_INITDIALOG Radiobuttons aktivieren?



  • Maxi2 schrieb:

    Noch ne Frage zu Dialogen:
    Wie kann ich nach dem Beenden des Dialoges testen, also wenn man OK geklickt hat, welcher Radiobutton aktiviert ist, wenn ich nur seine ID kenne?

    IsDlgButtonChecked

    Maxi2 schrieb:

    Und wie kann vor dem Anzeigen des Dialoges, nach WM_INITDIALOG Radiobuttons aktivieren?

    Das machst Du INNERHALB von WM_INITDIALOG mit
    CheckDlgButton



  • Maxi2 schrieb:

    Hab aber noch ne Frage:
    Was ist der Unterschied zwishcne modalen und Nichtmodalen Dialogen?

    Bei einem modalen Dialog kehrt die Dialogfunktion (ich meine damit z.B. DialogBox) erst zurück, wenn der Dialog geschlossen wurde.
    Bei einem nichtmodalen Dialog kehrt die Funktion (CreateDialog) dagegen sofort zurück.



  • aha, also heißt das, das man im Hauptfenster nur arbeiten kann, wenn ein kein modaler Dialog geöffnet ist. Und bei einem Nichtmodalen geht es ? Richtig verstanden?


Anmelden zum Antworten