SetClassLong

Funcția SetClassLong înlocuiește valoarea specificată pe 32 de biți (lung) a la decalajul specificate în memoria clasa extra sau structura WNDCLASSEX clasei de care aparține fereastra specificat.

(DWORD SetClassLong HWND  hWnd, / / ocupa de fereastraintnIndex, / / index de valoare pentru a modificaLungdwNewLong / / new valoarea);
 

Parametrii

hWnd
Mâner pentru fereastra și, indirect, clasa de care aparține fereastra.
nIndex
Specifică valoarea de 32 de biți pentru a înlocui. Pentru a seta o valoare de 32-biți în memoria clasa extra, specificați decalajul octet pozitive, zero-based de valoare pentru a stabili. Valorile valide sunt în intervalul zero prin numărul de bytes de memorie de clasa extra, minus patru; de exemplu, dacă ați specificat 12 sau mai multe bytes de memorie de clasa extra, o valoare de 8 ar fi un index la ter?e întreg pe 32 de biți. Pentru a seta orice altă valoare din structura WNDCLASSEX , specificați una din următoarele valori:
Valoarea Acțiune
GCL_CBCLSEXTRA Setează dimensiunea, în octeți, de memorie suplimentar asociate cu clasa. Setarea această valoare nu se modifică numărul de octeți suplimentare alocate deja.
GCL_CBWNDEXTRA Setează dimensiunea, în octeți, fereastra suplimentare de memorie asociate cu fiecare fereastră în clasa de. Setarea această valoare, nu se modifică numărul de octeți suplimentare alocate deja. Pentru informații despre cum să acceseze această memorie, consultați SetWindowLong.
GCL_HBRBACKGROUND Înlocuiește ghidajul pensulei fundal asociate cu clasa.
GCL_HCURSOR Înlocuiește mâner cursorul care asociate cu clasa.
GCL_HICON Înlocuiește mâner pictograma asociată cu clasa.
GCL_HMODULE Înlocuiește ghidajul de modulul care înregistrează clasa.
GCL_MENUNAME Înlocuiește adresa șirul de nume de meniu. Șirul identifică resursa meniu asociate cu clasa.
GCL_STYLE Înlocuiește în fereastra-clasa stil bits.
GCL_WNDPROC Înlocuiește adresa procedura fereastra asociate cu clasa.

dwNewLong
Specifică valoarea de înlocuire.

Valorile întroarse

Dacă funcția reușește, valoarea returnată este valoarea anterioară a specificat întreg pe 32 de biți. Dacă valoarea nu a fost setată anterior, valoarea returnată este zero.

Dacă funcția nu reușește, valoarea returnată este zero. Pentru a obține extins informa?ii eroare, apel GetLastError.

Observații

Dacă utilizați funcția de SetClassLong și indicele de GCL_WNDPROC pentru a înlocui procedura fereastra, procedura fereastra trebuie să fie conforme cu liniile directoare specificate în descrierea funcția de apel invers WindowProc.

Apelarea SetClassLong cu indicele GCL_WNDPROC creează o subclasă de clasa fereastra care afectează toate windows create ulterior cu clasa. Cererea poate subclasă o clasă de sistem, dar ar trebui să nu subclasă o clasă fereastra creat de un alt proces.

Clasa extra memoria de rezervă specificând o valoare nenul în membre cbClsExtra structurii WNDCLASSEX utilizate cu funcția RegisterClassEx.

Utilizați funcția SetClassLong cu grijă. De exemplu, este posibil pentru a schimba culoarea de fundal pentru o clasă prin folosirea SetClassLong, dar această schimbare nu repaint imediat toate ferestrele din clasa.

Windows CE: Parametrul nIndex este un octet compensată, dar trebuie să fie un multiplu de 4 octeți. Nealiniată acces nu este acceptată.

Nici unul dintre GCL_ * valorile standard sunt acceptate în parametrul nIndex , cu o singură excepție. Dacă dispozitivul vă sunt de orientare acceptă un cursor de mouse-ul, utilizați valoarea GCL_HCURSOR în parametrul nIndex.

Notă Versiunile Windows CE care acceptă cursoare de mouse-ului includ componentele Iconcurs și Mcursor, mai degrabă decât componentele Icon și Cursor.

QuickInfo

nbsp; Windows &NT: necesită versiunea 3.1 sau mai târziu.
Windows:Necesită Windows 95 sau o versiune ulterioară.
Windows CE:Necesită versiunea 1.0 sau mai târziu.
Antet:A declarat în winuser.h.
Import Biblioteca:Utilizarea user32.lib.
Unicode:Pus în aplicare ca Unicode și ANSI versiuni Windows NT.

A se vedea, de asemenea

Fereastra clase de prezentare, fereastra clasa funcții, GetClassLong, RegisterClassEx, SetWindowLong, WindowProc, WNDCLASSEX