Simples Programm, doch keine Lösung



  • void CStatusDlg::OnButton1()
    {
    m_ausgabe="Hallo";
    UpdateData(FALSE);
    Sleep(1500);
    m_ausgabe="Du da";
    UpdateData(FALSE);
    }

    Warum wird mir das "Hallo" nicht ausgegeben? Das "Du da" erscheint nach der abgelaufenen Zeit.

    Help me, please. 😞



  • Weil Windows erst sein Fenster Updaten muss. Windows funktioniert auf Basis von Nachrichten. Diese werden im Thred des HauptDlgs in einer Schleife abgefragt.
    Da du aber sleep eingebaut hast wird das Programm angehalten.
    Du kannst Windows nach UpdateData dazu auffordern das Fenster neu zu zeichen. UpdatWindow()

    oder die Nachrichtenwarteschlange selbst auslesen.



  • Vielen Dank, hat mir sehr geholfen. 😃 😃 😃 😃 💡


Anmelden zum Antworten