StatusBar
-
Wie kann ich in der Statusbar einen Text anzeigen, und ihn später verändern ?
In den Bücher steht eine Lösung, mit einem indicator-Array und einem Eintrag
in der MESSAGE MAP: ON_UPDATE_COMMAND_UI(ID_XXX, OnUpdateXXX), doch woher kommt
das Ereignis ? Wann wird es ausgelöst ? Gegoogelt habe ich schon.
-
Das Ereignis wird durch die Message Loop der MFC ausgelöst.
Ursächlich wird WM_IDLEUPDATECMDUI versendet. Das wird von den Toolbars und Statusbars verarbeitet und die Fragen Ihre Member ab, was wiederum zu einer Kaskade und Weiterleitung in die View, Doc und App führt.
-
Gehe ich richtig in der Annahme, das die Update-Funktionen der Stausbar, nach
jedem Anwendungs-Ereignis aufgerufen werden ? Wenn ich ein Click-Ereignis habe,
zB in meiner CView-Klasse, werden dann erst der Click-Händler, und dann erst
die Update-Funktionen, aufgerufen ? Sonst könnten ja die Aktualisierungstexte
für die Statusbar nicht verändert werden.
-
So ist es. Nachdem alle Input Nachrichten abgehandelt wurden und die Applikation Idle geht, wird der Update durchgeführt.