|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| user32.lib
| Header File
| winuser.h
| Unicode
| WinNT
| Platform Notes
| None
|
|
|
SetClassLong
The
SetClassLong function replaces the specified 32-bit (long) value at the specified offset
into the extra class memory or the
WNDCLASS structure for the class to which the specified window belongs.
DWORD SetClassLong(
HWND hWnd,
| // handle of window
|
int nIndex,
| // index of value to change
|
LONG dwNewLong
| // new value
|
);
|
|
Parameters
hWnd
Identifies the window and, indirectly, the class to which the window belongs.
nIndex
Specifies the 32-bit value to replace. To set a 32-bit value in the extra
class memory, specify the positive, zero-based byte offset of the value to be set.
Valid values are in the range zero through the number of bytes of extra class
memory, minus four; for example, if you specified 12 or more bytes of extra
class memory, a value of 8 would be an index to the third 32-bit integer. To set
any other value from the
WNDCLASS structure, specify one of the following values:
Value
| Action
|
GCL_CBCLSEXTRA
| Sets the size, in bytes, of the extra memory associated with the class.
Setting this value does not change the number of extra bytes already allocated.
|
GCL_CBWNDEXTRA
| Sets the size, in bytes, of the extra window memory associated with each
window in the class. Setting this value does not change the number of extra bytes
already allocated. For information on how to access this memory, see SetWindowLong and SetWindowWord.
|
GCL_HBRBACKGROUND
| Replaces the handle of the background brush associated with the class.
|
GCL_HCURSOR
| Replaces the handle of the cursor associated with the class.
|
GCL_HICON
| Replaces the handle of the icon associated with the class.
|
GCL_HMODULE
| Replaces the handle of the module that registered the class.
|
GCL_MENUNAME
| Replaces the address of the menu name string. The string identifies the menu
resource associated with the class.
|
GCL_STYLE
| Replaces the window-class style bits.
|
GCL_WNDPROC
| Replaces the address of the window procedure associated with the class.
|
dwNewLong
Specifies the replacement value.
Return Values
If the function succeeds, the return value is the previous value of the
specified 32-bit integer.
If the function fails, the return value is zero. To get extended error
information, call
GetLastError.
Remarks
If you use the
SetClassLong function and the GCL_WNDPROC index to replace the window procedure, the
window procedure must conform to the guidelines specified in the description of the
WindowProc callback function.
Calling
SetClassLong with the GCL_WNDPROC index creates a subclass of the window class that
affects all windows subsequently created with the class. An application should not
subclass a window created by another process.
Reserve extra class memory by specifying a nonzero value in the
cbClsExtra member of the
WNDCLASS structure used with the
RegisterClass function.
Use the
SetClassLong function with care. For example, it is possible to change the background
color for a class by using
SetClassLong, but this change does not immediately repaint all windows belonging to the
class.
See Also
GetClassLong,
GetClassWord,
RegisterClass,
SetClassWord,
SetWindowLong,
SetWindowWord,
WindowProc,
WNDCLASS
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database