[C++/WinAPI] Aktualisierung während eines MessageHandles

Sephizero

Grünschnabel
Hallo,

ich habe folgendes Problem:

Ich schreibe ein Programm, das bestimmte Daten verarbeitet.
Wenn ich auf einen Button klicke soll er anfangen zu arbeiten und zwischendurch Informationen über den Status an eine Listbox senden (als String Item sozusagen).

Ich habe also meine Funktion:

Code:
//
load__data(data_a, data_b) ;

und anschließend die Nachricht:

Code:
SendMessage(hWndList_out, LB_ADDSTRING, (WPARAM) 0, (LPARAM) char_msg);

Danach wird die nächste Funktion aufgerufen.

Nun möchte ich aber, dass ich vor dem Aufruf der Funktion über den Status informiert werde.
Die ganzen Aufrufe stehen bei mir unter dem MessageHandler "WndProc" unter dem Aufruf WM_COMMAND, welches ja beim Button Click angesprungen wird.

Jedoch wird die Listbox erst aktualisiert, nachdem der ganze Funktionsblock vom Button Click Aufruf abgearbeitet wird.

Gibt es eine Möglichkeit, die Listbox schon zwischendurch zu aktualisieren? Ich denke, dass das Problem darin liegt, dass er die Nachrichten nacheinander abarbeitet, also erst die Nachricht "jemand hat Button geklickt" und dann "Listbox hat Nachricht bekommen). Mir fällt nur kiene Lösung zu ein.

Habt ihr vielleicht eine Idee?

Tut mir leid, dass ich nicht soviel Code geschrieben habe, aber dieser ist sehr groß und würde die Sache wahrscheinlich eher verkomplizieren.

Gruß
 
Habe inzwischen selbst die Antwort gefunden.

Ein einfaches

UpdateWindow (hWndList_out);

bringt die Erlösung. War wohl so trivial, dass noch nie jemand das Problem hatte. Habe 2 Stunden mit Google zugebracht. Darf man auch keinem erzählen =)

Viele Grüße
 
Wenigstens mal einer der die Antwort postet :).

Das geleiche Problem hatte ich auch vor kurzem, nur war bei mir die Status anzeige nicht so wichtig, dass ich sie einfach ausgelassen habe :P.

Naja. Wieder was gelernt.

Gruß,
Anfänger
 
Zurück