Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung des Beispielcodes von Windows-Meldungen, die C#-Programmierer bei der Entwicklung von WinForm kennen müssen

Detaillierte Erläuterung des Beispielcodes von Windows-Meldungen, die C#-Programmierer bei der Entwicklung von WinForm kennen müssen

黄舟
黄舟Original
2017-03-13 17:50:171962Durchsuche

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn