WNDCLASSEX

Die WNDCLASSEX -Struktur enthält Fenster-Klasseninformationen. Es wird mit der RegisterClassEx und GetClassInfoExverwendet, Funktionen.

Die WNDCLASSEX -Struktur ist ähnlich der WNDCLASS Struktur. Es gibt zwei Unterschiede. WNDCLASSEX umfasst das CbSize -Mitglied, das die Größe der Struktur angibt, und der hIconSm -Member, der einen Handle für ein kleines Symbol enthält im Zusammenhang mit der Window-Klasse.

typedef Struct _WNDCLASSEX {UINT CbSize; 
    UINT style; 
    WNDPROC LpfnWndProc; 
    Int WNDCLAS; 
    Int CbWndExtra; 
    HANDLE hInstance; 
    HICON hIcon; 
    HCURSOR hCursor; 
    HBRUSH HbrBackground; 
    LPCTSTR LpszMenuName; 
    LPCTSTR LpszClassName; 
    HICON hIconSm; 
} WNDCLASSEX 

 

Mitglieder

cbSize
Gibt die Größe in Bytes, der Struktur. Legen Sie dieses Element auf sizeof(WNDCLASSEX). Sein Sie sicher, dass dieser Member vor dem Aufruf der GetClassInfoEx -Funktion.
stil
Gibt die Klasse Stil(e). Stile können mithilfe des bitweise OR kombiniert werden Operator (|). Dieses Mitglied kann eine beliebige Kombination der folgenden Werte sein.:
Wert Aktion
CS_BYTEALIGNCLIENT Richtet den Fensterclientbereich auf die Byte-Grenze (in X-Richtung). Diese Formatvorlage wirkt sich auf die Breite des Fensters und die horizontale Position auf dem display.
CS_BYTEALIGNWINDOW Richtet ein Fenster an einer Byte-Grenze (in X-Richtung). Diese Formatvorlage wirkt sich auf die Breite des Fensters und die horizontale Position auf dem display.
CS_CLASSDC Ordnet einem Gerätekontext durch alle Fenster in der Klasse gemeinsam genutzt werden. Da Fensterklassen Prozess spezifische sind, ist es möglich, dass mehrere Threads einer Anwendung zum Erstellen eines Fensters der gleichen Klasse. Es ist auch möglich, dass die Threads versuchen, gleichzeitig den Gerätekontext verwenden. Wenn dies geschieht, kann das System nur einen Thread für die Zeichnung Operation erfolgreich abgeschlossen. Weitere Informationen finden Sie unter Gerätekontexte.
CS_DBLCLKS Sendet doppelklicken Nachrichten an die Fensterprozedur, wenn der Benutzer die Maus doppelklickt, während der Cursor befindet sich innerhalb eines Fensters gehören der Klasse.
CS_GLOBALCLASS Ermöglicht es einer Anwendung zum Erstellen eines Fensters der Klasse unabhängig vom Wert des Parameters hInstance an die CreateWindowEx -Funktion übergeben. Wenn Sie dieses Format nicht angeben, muss der hInstance -Parameter an die Funktion CreateWindow (oder CreateWindowEx) übergeben identisch mit dem hInstance -Parameter an die Funktion RegisterClassEx übergeben werden.
Sie können eine globale Klasse erstellen, indem die Window-Klasse in einer Dynamic Link Library (DLL) erstellen und den Namen der DLL, in der Registrierung unter dem folgenden Schlüssel auflisten:
HKEY_LOCAL_MACHINE\Software
\Microsoft\Windows NT\
CurrentVersion\Windows\"AppInit_DLLs"
Wenn ein Prozess gestartet wird, lädt das System den angegebenen DLLs im Rahmen des neu gestarteten Prozesses vor dem Aufruf der Einstiegspunktfunktion in diesem Prozess. Die DLL muss registrieren Sie die Klasse während der Initialisierung-Verfahrens und muss die CS_GLOBALCLASS-Formatvorlage angeben.
CS_HREDRAW Zeichnet das gesamte Fenster, wenn eine Bewegung oder Anpassung die Breite des Clientbereichs ändert.
CS_NOCLOSE Deaktiviert im Menü Fenster Schließen.
CS_OWNDC Weist einen einzigartige Gerätekontext für jedes Fenster in der Klasse. Weitere Informationen finden Sie unter Gerätekontexte.
CS_PARENTDC Legt den Ausschneidebereich des untergeordneten Fensters, der das übergeordnete Fenster fest, so dass das Kind auf die Eltern zurückgreifen kann. Ein Fenster mit der CS_PARENTDC-Formatbit erhält einen normalen Gerätekontext von den System-Cache von Gerätekontexten. Es gibt nicht dem Kind der Eltern Gerätekontext oder Kontext Geräteeinstellungen. Angeben von CS_PARENTDC verbessert die Leistung einer Anwendung. Weitere Informationen finden Sie unter Gerätekontexte.
CS_SAVEBITS Speichert, als Bitmap, den Teil des Bildschirmausschnitts werden durch ein Fenster verdeckt. Das System verwendet die gespeicherte Bitmap Bild des neu erstellen, wenn das Fenster entfernt wird. Das System zeigt die Bitmap an seiner ursprünglichen Stelle und sendet keine WM_PAINT -Meldungen in Windows durch Fenster verdeckt, wenn der Speicher verwendet die Bitmap nicht verworfen wurde und anderen Bildschirm-Aktionen nicht das gespeicherte Bild widerlegt haben. Dieser Stil eignet sich für kleine Fenster (z. B. Menüs oder Dialogfeldern), die kurz angezeigt und dann entfernt werden, bevor andere Bildschirm-Aktivität stattfindet. Dieser Stil wird die Zeit benötigt, um das Fenster, weil das System zuerst die Bitmap speichern Speicher muss erhöht.
CS_VREDRAW Zeichnet das gesamte Fenster, wenn eine Bewegung oder Größe ändert sich die Höhe des Clientbereichs.

lpfnWndProc
Zeiger auf die Fensterprozedur. Sie müssen die CallWindowProc -Funktion verwenden, um die Fensterprozedur anzurufen. Weitere Informationen finden Sie unter WindowProc.
wNDCLAS
Gibt die Anzahl der zusätzlichen Bytes nach der Struktur der Window-Klasse zuweisen. Das System initialisiert zu 0 (null) bytes.
cbWndExtra
Gibt die Anzahl der zusätzlichen Bytes nach der Fenster-Instanz zuweisen. Das System initialisiert zu 0 (null) Bytes. Wenn eine Anwendung WNDCLASSEX verwendet, um ein Dialogfeld erstellt mithilfe der CLASS -Direktive in der Ressourcendatei registrieren, müssen sie dieses Element auf DLGWINDOWEXTRA festlegen.
hInstance
Behandeln Sie, um die Instanz, die die Fensterprozedur für diese Klasse innerhalb.
hIcon
Handle für die Klasse Symbol. Dieses Element muss ein Handle von einer Symbolressource sein. Wenn dieser Member NULL ist, muss eine Anwendung ein Symbol gezeichnet, wenn der Benutzer das Anwendungsfenster minimiert.
hCursor
Handle für die Klasse Cursor. Dieses Element muss ein Handle einer Cursor-Ressource sein. Wenn dieser Member NULL ist, muss eine Anwendung explizit das Cursor-Shape festgelegt, wenn die Maus in das Anwendungsfenster verschiebt.
hbrBackground
Handle für die Klasse Hintergrundpinsel. Dieser Member kann ein Handle auf den physischen Pinsel für den Hintergrund verwendet werden, oder kann es ein Color-Wert. Ein Color-Wert muss eine der folgenden standard-Farben (der Wert 1 muss der gewählten Farbe hinzugefügt werden). Wenn ein Color-Wert angegeben wird, müssen Sie ihn zu einem der folgenden HBRUSH Typen konvertieren.:

COLOR_ACTIVEBORDER
COLOR_ACTIVECAPTION
COLOR_APPWORKSPACE
COLOR_BACKGROUND
COLOR_BTNFACE
COLOR_BTNSHADOW
COLOR_BTNTEXT
COLOR_CAPTIONTEXT
COLOR_GRAYTEXT
COLOR_HIGHLIGHT
COLOR_HIGHLIGHTTEXT
COLOR_INACTIVEBORDER
COLOR_INACTIVECAPTION
COLOR_MENU
COLOR_MENUTEXT
COLOR_SCROLLBAR
COLOR_WINDOW
COLOR_WINDOWFRAME
COLOR_WINDOWTEXT

Das System löscht automatisch Klasse Hintergrund Pinsel, wenn die Klasse freigegeben wird. Eine Anwendung sollte diese Bürsten, nicht löschen, da eine Klasse von mehreren Instanzen einer Anwendung verwendet werden kann.

Wenn dieser Member NULL ist, muss eine Anwendung einen eigenen Hintergrund zeichnen, wenn es angefordert wird, in seinen Clientbereich zu malen. Um festzustellen, ob der Hintergrund gezeichnet werden muss, eine Anwendung kann entweder verarbeiten die WM_ERASEBKGND-Meldung oder testen das Longitudinal Mitglied der PAINTSTRUCT Struktur gefüllt, indem die BeginPaint Funktion.

lpszMenuName
Zeiger auf eine Null-terminierte Zeichenfolge, die den Ressourcennamen im Menü Klasse, gibt an, wie der Name in der Ressourcendatei wird angezeigt. Wenn Sie eine ganze Zahl verwenden, um das Menü zu identifizieren, verwenden Sie das MAKEINTRESOURCE -Makro. Wenn dieser Member NULL ist, haben zu dieser Klasse gehören Windows keine Standard-Menü.
lpszClassName
Zeiger auf eine Null-terminierte Zeichenfolge oder ist ein Atom. Wenn dieser Parameter ein Atom ist, muss es eine globale Atom von einem vorherigen Aufruf der Funktion GlobalAddAtom erstellt. Das Atom, ein 16-Bit-Wert muß im niederwertigen Wort von LpszClassName; das hohe Word muss NULL sein.

Wenn LpszClassName eine Zeichenfolge ist, gibt es der Fensterklassenname.

hIconSm
Handle für ein kleines Symbol, das die Window-Klasse zugeordnet ist. Wenn dieser Member NULL ist, sucht das System die Symbolressource angegeben durch die hIcon Mitglied für ein Symbol der entsprechenden Größe als kleines Symbol verwenden.

QuickInfo

&Nbsp; Windows NT: erfordert Version 3.5 oder höher.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Nicht unterstützt.
Header:In winuser.h deklarierten.
Unicode:Als Unicode und ANSI Strukturen definiert.

Siehe auch

Übersicht über Windows-Klassen, Klasse Fensterkonstruktionen, GetClassInfoEx, RegisterClassEx

Index