Heim >Betrieb und Instandhaltung >Windows-Betrieb und -Wartung >Detaillierte Einführung in die Grundlagen des SDK

Detaillierte Einführung in die Grundlagen des SDK

零下一度
零下一度Original
2017-06-10 10:37:462563Durchsuche

1. Tastaturnachricht 1. Tastaturnachricht WM_KEYDOWN – wird generiert, wenn eine Tastaturtaste gedrückt wird. WM_KEYUP – wird generiert, wenn eine Tastaturtaste angezeigt wird. WM_SYSKEYDOWN – wird generiert, wenn die Systemtaste gedrückt wird, z. B. ALT, F10 usw. WM_SYSKEUP – wird generiert, wenn das System freigegeben wird WM_CHAR – Zeichennachricht 2. Nachrichtenparameter: Schlüsselnachricht: WPARAM – VirtualKey der Taste (virtueller Tastencode) LPARAM - – Parameter der Taste, wie z. B. die Anzahl der Tastendrücke WM_CHAR:WPARAM – Eingabezeichen (ASCII-Kodierung) LPARAM – Zugehörige Parameter der Taste 3. Verwendung von Nachrichten: (1) KEYDOWN kann die Nachricht wiederholen, KEYUP kann nur freigegeben, nachdem die Taste losgelassen wurde. Erscheint einmal (2) TranslateMessage Beim Konvertieren der WM_KEYDOWN-Nachricht kann WM_CHAR für sichtbare Zeichen generiert werden, für unsichtbare Zeichen gibt es jedoch keine solche Nachricht. 2. Mausmeldungen 1. Grundlegende Mausmeldungen WM_LBUTTONDOWN - WM_LBUTTONUP, wenn die linke Maustaste gedrückt wird

1. Detaillierte Einführung in Tastatur- und Mausmeldungen in Win32 SDK Basics (13)

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 1. Tastaturnachricht 1. Tastaturnachricht WM_KEYDOWN – wird generiert, wenn eine Tastaturtaste gedrückt wird. WM_KEYUP – wird generiert, wenn eine Tastaturtaste angezeigt wird. WM_SYSKEYDOWN – wird generiert, wenn die Systemtaste gedrückt wird, z. B. ALT, F10 usw. WM_SYSKEUP – wird generiert, wenn das System freigegeben wird WM_CHAR – Zeichennachricht 2. Nachrichtenparameter: Schlüsselnachricht: WPARAM – VirtualKey der Taste (virtueller Tastencode) LPARAM -

2. Win32 SDK-Grundlagen (12) Verarbeitung der WM_PAINT-Nachricht (Bild)

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 1. Einführung In einem Computer wird fast alles, was auf dem Bildschirm angezeigt wird, gezeichnet, einschließlich Fenster, Dialogfelder, Bilder und aller Texte, und die WM_PAINT-Nachricht wird durch die Meldung ausgelöst System beim Zeichnen dieser Objekte. Fast jede Operation, die wir auf dem Computer ausführen, löst diese Meldung aus und sie ist auch eine der wichtigsten Meldungen in Windows. Dieser Artikel konzentriert sich auf das Experimentieren mit dieser Botschaft für eine umfassende Studie. 2. Grundlagen von WM_PAINT 2.1 Makrodefinition #define WM_PAIN

3. Win32 SDK-Grundlagen (11) Detaillierte Erläuterung der Nachrichtenwarteschlange und GetMessage/PeekMessage, SendMessage/Postmesage

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 1. Nachrichtenwarteschlange 1.1 Nachrichtenwarteschlange Die Nachrichtenwarteschlange ist eine Warteschlange, in der Nachrichten gespeichert werden Die Warteschlange Im First-In-First-Out-Modus verfügen alle Fensterprogramme über Nachrichtenwarteschlangen, und das Programm kann Nachrichten aus der Warteschlange abrufen. 1.2 Arten von Nachrichtenwarteschlangen Systemnachrichtenwarteschlange: Eine vom Betriebssystem verwaltete Nachrichtenwarteschlange, in der vom System generierte Nachrichten wie Maus- und Tastaturnachrichten usw. gespeichert werden. Programmnachrichtenwarteschlange: Eine Nachrichtenwarteschlange, die zu jeder Anwendung (Thread) gehört und von der Anwendung verwaltet wird.

4.

Win32 SDK-Grundlagen (10) Detaillierte Erläuterung mehrerer gängiger Windows-Beispielcodes

Detaillierte Einführung in die Grundlagen des SDK

Einführung: Einführung In diesem Artikel wird hauptsächlich die Verarbeitung mehrerer allgemeiner Nachrichten in Windows vorgestellt. In „Win32 SDK Basics (8) – Windows Message Mechanism“ haben wir die Verarbeitung von WM_CREATE vorgestellt Nachricht: Bevor das Fenster erstellt wird, verwenden wir die Nachrichtenverarbeitungsfunktion, um eine MessageBox anzuzeigen. Auf dieser Grundlage werden in diesem Artikel andere gängige Windows-Nachrichten wie WM_DESTROY, WM_SYSCOMMAND, WM_QUIT, WM_SIZE usw. vorgestellt. Zunächst stellen wir die Zusammenfassung der allgemeinen Windows-Meldungen in

5

Win32 SDK Basics (9)

Detaillierte Einführung in die Grundlagen des SDKEinführung: 1. Windows-Nachrichtenverteilungsnachrichtenbereichsbeschreibung 0 ~ WM_USER – 1 Systemnachricht WM_USER ~ 0x7FFF benutzerdefinierte Fensterklasse-Ganzzahlnachricht WM_APP ~ 0xBFFF benutzerdefinierte Anwendungsnachricht 0xC000 ~

6. Win32 SDK-Grundlagen (8) Detaillierte Erläuterung des Windows-Meldungsmechanismus (Bild)

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 1. Was ist eine Nachricht? Bevor wir erklären, was eine Nachricht ist, diskutieren wir zunächst den Ausführungsmechanismus des Programms. Generell lassen sich Programme nach ihren Ausführungsmechanismen in zwei Kategorien einteilen: Die erste Kategorie ist prozessgesteuert. Zum Beispiel das C-Programm, das wir geschrieben haben, als wir zum ersten Mal mit der Programmierung in Berührung kamen, oder das Mikrocontroller-Programm. Diese Art von Programm hat oft einen voreingestellten Ausführungsprozess, und wenn wir es ausführen, führen wir es einfach Schritt für Schritt aus; der zweite Typ ist ereignisgesteuert. Ich glaube, jeder kann diesen Vorfall verstehen. Das Eintreten jedes Ereignisses ist zufällig und jedes Ereignis hat seinen eigenen Moment, ähnlich wie Ereignisse im Leben.

7 im Programm Win32 SDK Basics (7) – Beispiel für die Erstellung eines Unterfensters eines Fensters

Detaillierte Einführung in die Grundlagen des SDK

Einführung: Was ist ein untergeordnetes Fenster? Wenn wir in einem Windows-Fenster auf eine Schaltfläche klicken, beispielsweise auf die Schaltfläche zum Schließen des Fensters, wird häufig ein Fenster geöffnet, in dem relevante Informationen angezeigt werden. Ein Popup-Fenster wie dieses ist ein Unterfenster des Hauptfensters. Wenn wir ein untergeordnetes Fenster erstellen, verwenden wir auch die CreateWindow- oder CreateWindowEx-API. Werfen wir einen Blick auf den Funktionsprototyp von CreateWindow: HWND WINAPI CreateWindow(_In_opt_ LPCTSTR

8. Win32 SDK-Grundlagen (6) Detaillierte Erläuterung des Fensterklassensuchprozesses und verwandter Themen APIs

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 1. Der Suchprozess von Fensterklassen Im vorherigen Artikel haben wir die drei vorgestellt Fensterklassen des Windows-Systems – Systemfensterklasse, globale Fensterklasse und lokale Fensterklasse, und der in jedem Bereich registrierte Fensterklassenname kann beim Erstellen eines Fensters nicht wiederholt werden. Globale und lokale Bereiche werden nach dem Namen der Fensterklasse durchsucht. Der Suchvorgang wird wie folgt zusammengefasst: (1) Das Betriebssystem sucht in der lokalen Fensterklasse nach dem Namen der eingehenden Fensterklasse. Wenn es nicht gefunden wird, führen Sie Schritt 2 aus. 3 Schritte (2

9. Win32 SDK-Grundlagen (5) Eine kurze Einführung in die Fensterklasse

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 1. Einführung Im vorherigen Artikel haben wir ein Fenster von Grund auf neu erstellt Registrieren Sie die Fensterklasse, wie im folgenden Code gezeigt. //Register window class BOOL Register(LPSTR lpClassName, WNDPROC wndProc){ WNDCLASSEX wce = { 0 }; >

10. Win32 SDK-Grundlagen (4) Der zweite Schritt zum Erstellen eines Windows-Fensters von Grund auf

Detaillierte Einführung in die Grundlagen des SDK

Einführung: 3.5 Anzeigefenster Wenn wir nach dem Erstellen des Fensters das Fenster beim Ausführen sehen möchten, müssen wir auch das Anzeigefenster explizit festlegen: ShowWindow(hWnd, SW_SHOW) ;UpdateWindow(hWnd); ShowWindow und UpdateWindow sind beide System-APIs. Ersteres dient zum Festlegen der Anzeigeeigenschaften des Fensters und letzteres zum erneuten Aktualisieren der Fenstereigenschaften. Erst nach der Aktualisierung werden die Eigenschaften wirksam WinMain.

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Grundlagen des SDK. 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