PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MFC: Ereigniswarteschlange abfragen wie mit PeekMessage?


Vedek Bareil
2004-11-28, 01:10:06
Hallo,

Ich bin zur Zeit beruflich bedingt dabei, mich etwas intensiver mit der MFC zu beschäftigen und bin gerade beim Thema Ereigniswarteschlange. Die Standard-Schleife mit GetMessage ist ja wie bei Delphi nicht im Quelltext zu sehen, an die Stelle der Nachrichtenverarbeitung in der WindowProcedure tritt die MESSAGE_MAP.

Wie aber steht es um die Möglichkeit, die Ereigniswarteschlange abzufragen und bei Nichtvorhandensein von Nachrichten mit dem Programmcode fortzufahren? Also das was man unter der Win32-API mit PeekMessage und in Delphi mit der Methode TApplication.ProcessMessages macht? Die MFC-Klasse CWinApp entspricht ja ungefähr TApplication aus der VCL, gibt es dann vielleicht eine vergleichbare Methode von CWinApp? Oder bietet die MFC so was gar nicht an?

Vedek Bareil
2004-11-28, 19:06:45
Hab die Lösung schon gefunden:

http://www.cpp-tutor.de/mfc/mfc/kap3/lektion7.htm

Die MFC fragt die Ereigniswarteschlange standardmäßig schon mit PeekMessage statt GetMessage ab. Für Default-Aktionen, die bei Nichtvorhandensein von Nachrichten ausgeführt werden, gibt es die Methode CWinApp::OnIdle().