Glauben Sie nicht, dass die folgenden Dinge nur in C++ verwendet werden!
Eine Nachricht bezieht sich auf eine von Windows gesendete Benachrichtigung, um der Anwendung mitzuteilen, dass etwas passiert ist. Wenn Sie beispielsweise mit der Maus klicken, die Fenstergröße ändern und eine Taste auf der Tastatur drücken, sendet Windows eine Nachricht an die Anwendung.
Die Nachricht selbst wird als Datensatz an die Anwendung übergeben, der den Nachrichtentyp und andere Informationen enthält. Beispielsweise enthält dieser Datensatz für eine durch einen Mausklick generierte Nachricht die Koordinaten des Mausklicks. Dieser Datensatztyp heißt TMsg und wird in der Windows-Einheit wie folgt deklariert:
type TMsg = packed record hwnd: HWND; //窗口句柄 message: UINT;//消息常量标识符 wParam: WPARAM ;// 32位消息的特定附加信息 lParam: LPARAM ;// 32位消息的特定附加信息 time: DWORD;//消息创建时的时间 pt: TPoint; //消息创建时的鼠标位置 end ;
Was steht in der Nachricht?
Denken Sie, dass die Informationen in einem Nachrichtendatensatz wie Griechisch klingen? Wenn ja, schauen Sie sich die folgende Erklärung an: hwnd 32-Bit-Fensterhandle. Ein Fenster kann jede Art von Bildschirmobjekt sein, da Win32 Handles für die meisten visuellen Objekte (Fenster, Dialogfelder, Schaltflächen, Bearbeitungsfelder usw.) verwalten kann. message ist ein konstanter Wert, der zur Unterscheidung anderer Nachrichten verwendet wird. Diese Konstanten können vordefinierte Konstanten in Windows-Einheiten oder benutzerdefinierte Konstanten sein. wParam ist normalerweise ein konstanter Wert, der sich auf die Nachricht bezieht, oder es kann das Handle des Fensters oder Steuerelements sein.
lParam ist normalerweise ein Zeiger auf Daten im Speicher. Da WParam, lParam und Pointer alle 32-Bit sind, können sie ineinander konvertiert werden.
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Beispielcodes von Windows-Meldungen, die C#-Programmierer bei der Entwicklung von WinForm kennen müssen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!