WNDCLASSEX

De WNDCLASSEX structuur bevat venster klasse informatie. Het wordt gebruikt met de RegisterClassEx en GetClassInfoEx functies.

De WNDCLASSEX structuur is vergelijkbaar met de WNDCLASS structuur. Er zijn twee verschillen. WNDCLASSEX bevat de cbSize lid, dat de grootte van de structuur geeft, en het hIconSm lid, die een ingang voor een klein pictogram bevat gekoppeld is aan de klasse venster.

typedef struct _WNDCLASSEX {UINT cbSize; 
    UINT stijl; 
    WNDPROC lpfnWndProc; 
    int cbClsExtra; 
    int cbWndExtra; 
    HANDVAT hInstance; 
    HICON hIcon; 
    HCURSOR hCursor; 
    HBRUSH hbrBackground; 
    LPCTSTR lpszMenuName; 
    LPCTSTR lpszClassName; 
    HICON hIconSm; 
} WNDCLASSEX 
 

Leden

cbSize
Geeft de grootte, in bytes, van deze structuur. Dit lid instelt op sizeof(WNDCLASSEX). Zorg ervoor dat u dit lid instelt voor het aanroepen van de functie GetClassInfoEx.
stijl
Hiermee geeft u de klasse style(s). Stijlen kunnen worden gecombineerd met behulp van de bitsgewijze OR (|) exploitant. Dit lid kan een willekeurige combinatie van de volgende waarden worden:
Waarde Actie
CS_BYTEALIGNCLIENT Hiermee lijnt u het clientgebied van het venster op de grens van de byte (in de x-richting). Deze stijl is van invloed op de breedte van het venster en de horizontale positie op het display.
CS_BYTEALIGNWINDOW Hiermee lijnt u een venster op de grens van een byte (in de x-richting). Deze stijl is van invloed op de breedte van het venster en de horizontale positie op het display.
CS_CLASSDC Wijst één device-context moeten worden gedeeld door alle vensters in de klasse toe. Omdat venster klassen specifieke proces zijn, is het mogelijk voor meerdere threads van een aanvraag tot het maken van een venster van dezelfde klasse. Het is ook mogelijk voor de threads om tegelijkertijd te gebruiken de device-context. Wanneer dit gebeurt, kan het systeem slechts één draad om haar tekening bewerking met succes te voltooien. Voor meer informatie, Zie Apparaat contexten.
CS_DBLCLKS Verzendt berichten naar de venster procedure Dubbelklik op wanneer de gebruiker dubbelklikt op de muis terwijl de cursor zich binnen een venster die behoren tot de klasse.
CS_GLOBALCLASS Kan een toepassing maken een venster van de klasse ongeacht de waarde van de parameter hInstance doorgegeven aan de functie CreateWindowEx . Als u deze stijl niet opgeeft, moet de hInstance parameter doorgegeven aan de functie CreateWindow (of CreateWindowEx) hetzelfde zijn als de hInstance parameter doorgegeven aan de functie RegisterClassEx.
U kunt een algemene klasse maken door het venster klasse maken in een dynamic-link library (DLL) en vermelding van de naam van het dll-bestand in het register onder de volgende sleutels:
HKEY_LOCAL_MACHINE\Software
\Microsoft\Windows NT\
CurrentVersion\Windows\AppInit_DLLs
Telkens als een proces wordt gestart, laadt het systeem de opgegeven DLL's in het kader van de onlangs gestarte proces voor het aanroepen van de functie ingangspunt in dat proces. De DLL moet registreren de klasse tijdens de initialisatieprocedure en moet de CS_GLOBALCLASS stijl opgeven.
CS_HREDRAW Het hele venster opnieuw wordt getekend als een beweging of grootte aanpassing de breedte van het clientgebied wijzigt.
CS_NOCLOSE Hiermee schakelt u sluiten in het menu venster.
CS_OWNDC Wijst een unieke apparaatcontext voor elk venster in de klasse. Voor meer informatie, Zie Apparaat contexten.
CS_PARENTDC Stelt de regio knippen van het onderliggende venster met die van het bovenliggende venster zodat het kind op de bovenliggende kunt tekenen. Een venster met de CS_PARENTDC stijl beetje ontvangt een regelmatige device-context uit de cache van het systeem met apparaat contexten. Het geeft niet het kind van de ouders device-context of context Apparaatinstellingen. CS_PARENTDC opgeven verbetert de prestaties van een toepassing. Voor meer informatie, Zie Apparaat contexten.
CS_SAVEBITS Wordt opgeslagen, als een bitmap, het gedeelte van het beeld door een venster verborgen. Het systeem gebruikt de opgeslagen bitmap opnieuw maken beeld op het scherm wanneer het venster is verwijderd. Het systeem wordt de bitmap weergegeven op de oorspronkelijke locatie en verzendt geen WM_PAINT -berichten naar windows verduisterd door het venster als het geheugen gebruikt door de bitmap heeft niet verworpen en als andere scherm-acties hebben de opgeslagen afbeelding niet ontkracht. Deze stijl is handig voor kleine vensters (bijvoorbeeld, menu's of dialoogvensters) die zijn kort weergegeven en vervolgens verwijderd voordat andere scherm activiteit plaatsvindt. Deze stijl verhoogt de tijd die nodig is om het venster weer te geven omdat het systeem moet eerst geheugen voor het opslaan van de bitmap toewijzen.
CS_VREDRAW Het hele venster opnieuw wordt getekend als een beweging of grootte aanpassing de hoogte van het clientgebied wijzigt.

lpfnWndProc
Pointer naar het venster procedure. Bel de venster procedure moet u de functie CallWindowProc gebruiken. Voor meer informatie, Zie WindowProc.
cbClsExtra
Hiermee geeft u het aantal extra bytes toe te wijzen na de venster-klasse structuur. Het systeem initialiseert de bytes op nul.
cbWndExtra
Hiermee geeft u het aantal extra bytes toe te wijzen na het venster aanleg. Het systeem initialiseert de bytes tot nul. Als een toepassing WNDCLASSEX gebruikt om te registreren een dialoogvenster dat is gemaakt met de instructie CLASS in het bronbestand, moet het dit lid instelt op DLGWINDOWEXTRA.
hInstance
Ingang naar instantie die de procedure venster van deze klasse is binnen.
hIcon
Ingang naar het pictogram klasse. Dit lid moet een greep van een pictogram resource. Als dit lid NULL is, moet een toepassing een pictogram trekken wanneer de gebruiker van de toepassing venster minimaliseert.
hCursor
Ingang naar de klasse cursor. Dit lid moet een greep van een cursor resource. Als dit lid NULL is, worden een toepassing expliciet de shape cursor ingesteld wanneer de muis in het venster van de toepassing beweegt.
hbrBackground
Ingang naar de klasse achtergrond borstel. Dit lid kan een handvat aan de fysieke borstel om te worden gebruikt voor het schilderen van de achtergrond, of het kan een kleurwaarde. De kleurwaarde van een moet een van de volgende standaard systeemkleuren (de waarde 1 moet worden toegevoegd aan de gekozen kleur). Als een kleurwaarde wordt gegeven, moet u deze converteren naar een van de volgende typen HBRUSH:

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

Klasse achtergrond borstels verwijderd het systeem automatisch wanneer de klasse is bevrijd. Een toepassing moet deze borstels, niet verwijderen, omdat een klasse kan worden gebruikt door meerdere exemplaren van een toepassing.

Wanneer dit lid NULL is, moet een toepassing een eigen achtergrond verf wanneer het wordt gevraagd om te schilderen in de clientgebied. Om te bepalen of de achtergrond moet worden geschilderd, een toepassing kan verwerken de WM_ERASEBKGND bericht of testen van het lid fErase van de PAINTSTRUCT structuur gevuld door de BeginPaint -functie.

lpszMenuName
Aanwijzer naar een op null eindigende tekenreeks die, de naam van de resource van de klasse menu, aangeeft zoals de naam in het bronbestand verschijnt. Als u een geheel getal te identificeren van het menu, de macro MAKEINTRESOURCE gebruiken. Als deze lid NULL is, hebben die tot deze klasse behoren windows geen standaardmenu.
lpszClassName
Pointer naar een op null eindigende tekenreeks of is een atoom. Als deze parameter een atoom is, moet het een globale atoom gemaakt door een eerdere aanroep van de functie GlobalAddAtom . Het Atoom, een 16-bits waarde, moet in de lage-orde woord van lpszClassName; de eersterangs woord moet nul zijn.

Als lpszClassName een tekenreeks is, geeft het naam van de klasse van het venster.

hIconSm
Ingang naar een klein pictogram dat is gekoppeld aan de klasse venster. Als dit lid NULL is, zoekt het systeem de pictogram resource die is opgegeven door de hIcon -lid voor een pictogram van de juiste grootte te gebruiken als het kleine pictogram.

Syntaxisinfo

nbsp; Windows &NT: versie 3.5 of hoger vereist.
Windows:Windows 95 of hoger vereist.
Windows CE:Niet-ondersteunde.
Header:Verklaard in winuser.h.
Unicode:Gedefinieerd als Unicode en ANSI structuren.

Zie ook

Overzicht van venster klassen, venster klasse structuren, GetClassInfoEx, RegisterClassEx

Index