Nachrichtentypen

Zurück Zum Inhaltverzeichnis Weiter

Wie Sie bereits erfahren haben besitzt WINDOWS eine Unzahl von Systemnachrichten. Doch das ist noch nicht alles. Jede Anwendung kann ihre eigenen, nur innerhalb einer Fensterklasse oder einer Anwendung gültigen Nachrichten definieren. Zusätzlich ist es noch möglich, neue systemweit gültige Nachrichten zu definieren. Diese Nachrichten werden auch als registrierte Nachrichten bezeichnet. Damit diese neuen Nachrichten nicht mit den vordefinierten Nachrichten kollidieren (zur Erinnerung: Nachrichten sind nur einfache 32-Bit Werte!), wurde der gesamte Nachrichtenbereich in einzelne Bereiche untergliedert. Diese Gliederung teilt sich wie folgt auf:

Bereich von...bis

Bedeutung

0...WM_USER-1 vordefinierte WINDOWS Nachrichten
WM_USER...0x7FFF anwenderdefinierte, fensterklassenlokale Nachrichten
WM_APP...0xBFFF anwenderdefinierte, anwendungslokale Nachrichten
0xC000...0xFFFF registrierte Nachrichten
> 0xFFFF reserviert

Der erste Bereich 0...WM_USER-1 enthält die vordefinierten WINDOWS-Nachrichten wie z.B. die Nachricht WM_CLOSE oder auch WM_LBUTTONDOWN.

Im zweiten Bereich WM_USER...0x7FFF können eigene Nachrichten definiert werden, die nur innerhalb einer bestimmten Fensterklassen gültig sind. Nachrichten, die zwar anwendungslokal aber ohne Bezug auf eine Fensterklasse definiert werden sollen, dürfen nicht in diesem Bereich definiert werden da einige der vordefinierten Fensterklassen (wie z.B. Buttons oder Listboxen) ebenfalls Nachrichten aus diesem Bereich verwenden. Die Konstante WM_USER ist in der Datei WINUSER.H definiert und enthält zur Zeit den Wert 0x0400.

Der dritte Bereich dient zur Definition von anwendungslokalen, aber fensterunabhängigen Nachrichten. WM_APP ist ebenfalls in WINUSER.H definiert und besitzt zur Zeit den Wert 0x8000.

Nachrichten aus dem vierten Bereich sind Nachrichten die systemweit gültig. Sie werden mit der API-Funktion RegisterWindowMessage(...) spezifiziert. Mehrere Anwendungen die die gleiche Nachricht registrieren können dann über eine solche Nachricht miteinander kommunizieren.

Noch ein wichtiger Hinweis bevor es weiter geht. Tauchen im Text unterstrichene Funktionen auf, so können Sie durch anklicken des Textes eine detaillierte Beschreibung der Funktion in einem gesonderten Fenster einblenden. Sie können dies jetzt gleich ausprobieren, in dem Sie die Funktion RegisterWindowMessage(...) oberhalb dieses Hinweises anklicken.

In der nächsten Lektion erfahren Sie nun endlich, wie Nachrichten empfangen und gesendet werden.

Zurück Zum Inhaltsverzeichnis Weiter


Copyright © 2004

Senden Sie Emails mit Fragen oder Kommentaren zu dieser Website an: mailto:info@cpp-tutor.de
 Wolfgang Schröder, Lerchenweg 23, D-72805 Lichtenstein. Tel: +49 7129 6470