Dialog verstecken



  • Sers,

    Ich hab optional in meinem Programm einen Dialog erstellt, will man ihn net so hat man halt die Console.

    Jetzt ist es so: Ich möchte meinen Dialog auf jeden Fall erstellen, da ich Messages empfangen muss. Jetzt wollt ich bei WM_INITDIALOG einfach ein ShowWindow(SW_HIDE) machen. Aber es funktioniert nicht.

    Ich kann es bei WM_PAINT reinmachen. Aber mit kommt es vor, als ob das unnötig sei, da WM_PAINT ja oft aufgerufen wird.

    Also was mein ihr. Wie kann ich meinen Dialog sofort verstecken nachdem er erstellt wurde?!!

    cu para
    😃



  • HWND hDlg = CreateDialog
    ShowWindow(hDlg, SW_HIDE);
    

    😕



  • Ich erstell meinen Dialog aber mit DialogBox(...
    Davon mal abgesehen funktioniert auch die Methode mit CreateDialog nicht!

    [ Dieser Beitrag wurde am 14.02.2003 um 16:44 Uhr von paranoiac.org editiert. ]



  • Also nocheinmal
    Ich erstelle einen Dialog mit DialogBox(...)
    Jetzt möchte ich ihn sofort nach dem erstellen verstecken.
    Ich dachte mir es ginge so:

    // on init
        case WM_INITDIALOG:
            ShowWindow(hDlg, SW_HIDE);
    
            return TRUE;
    

    Jedoch passiert nichts. Mach ich statt SW_HIDE aber SW_MAXIMIZE wird das Fenster maximiert angezeigt.

    Wo ist der Fehler?

    danke!
    cu para
    😃



  • Dann vielleicht ein 'Fake'-Window erstellen das nur für die Nachrichten da ist (ich nehme an irgendwelche Winsock-Nachrichten?). Und den Dialog nur Anzeigen, wenn er tatsächlich gebraucht wird.



  • Jo, werd ich wohl nicht drumherumkommen.

    danke!
    cu para
    😃



  • DialogBox erstellt doch einen modalen Dialog, wenn du den versteckst kommst du doch nicht mehr an deine Anwendung heran, weil du diesen zuerst beenden musst 😕

    Kann man das vielleicht direkt bei der Resource einstellen 🙄

    [ Dieser Beitrag wurde am 14.02.2003 um 18:16 Uhr von flenders editiert. ]


Anmelden zum Antworten