Skip to content

Latest commit

 

History

History
224 lines (136 loc) · 8.58 KB

ns-winuser-wndclassa.md

File metadata and controls

224 lines (136 loc) · 8.58 KB
UID title description helpviewer_keywords old-location tech.root ms.assetid ms.date ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames req.redist ms.custom f1_keywords dev_langs topic_type api_type api_location api_name
NS:winuser.tagWNDCLASSA
WNDCLASSA (winuser.h)
Contains the window class attributes that are registered by the RegisterClass function. (ANSI)
*LPWNDCLASSA
*NPWNDCLASSA
*PWNDCLASSA
PWNDCLASS
PWNDCLASS structure pointer [Windows and Messages]
WNDCLASS
WNDCLASS structure [Windows and Messages]
WNDCLASSA
WNDCLASSW
_win32_WNDCLASS_str
_win32_wndclass_str_cpp
winmsg.wndclass
winui._win32_wndclass_str
winuser/PWNDCLASS
winuser/WNDCLASS
winuser/WNDCLASSA
winuser/WNDCLASSW
winmsg\wndclass.htm
winmsg
VS|winui|~\winui\windowsuserinterface\windowing\windowclasses\windowclassreference\windowclassstructures\wndclass.htm
12/05/2018
*LPWNDCLASSA, *NPWNDCLASSA, *PWNDCLASSA, PWNDCLASS, PWNDCLASS structure pointer [Windows and Messages], WNDCLASS, WNDCLASS structure [Windows and Messages], WNDCLASSA, WNDCLASSW, _win32_WNDCLASS_str, _win32_wndclass_str_cpp, winmsg.wndclass, winui._win32_wndclass_str, winuser/PWNDCLASS, winuser/WNDCLASS, winuser/WNDCLASSA, winuser/WNDCLASSW
winuser.h
Windows.h
Windows
Windows 2000 Professional [desktop apps only]
Windows 2000 Server [desktop apps only]
WNDCLASSW (Unicode) and WNDCLASSA (ANSI)
Windows
WNDCLASSA, *PWNDCLASSA, *NPWNDCLASSA, *LPWNDCLASSA
19H1
tagWNDCLASSA
winuser/tagWNDCLASSA
PWNDCLASSA
winuser/PWNDCLASSA
WNDCLASSA
winuser/WNDCLASSA
c++
APIRef
kbSyntax
HeaderDef
Winuser.h
WNDCLASS
WNDCLASSA
WNDCLASSW

WNDCLASSA structure

-description

Contains the window class attributes that are registered by the RegisterClass function.

This structure has been superseded by the WNDCLASSEX structure used with the RegisterClassEx function. You can still use WNDCLASS and RegisterClass if you do not need to set the small icon associated with the window class.

-struct-fields

-field style

Type: UINT

The class style(s). This member can be any combination of the Class Styles.

-field lpfnWndProc

Type: WNDPROC

A pointer to the window procedure. You must use the CallWindowProc function to call the window procedure. For more information, see WindowProc.

-field cbClsExtra

Type: int

The number of extra bytes to allocate following the window-class structure. The system initializes the bytes to zero.

-field cbWndExtra

Type: int

The number of extra bytes to allocate following the window instance. The system initializes the bytes to zero. If an application uses WNDCLASS to register a dialog box created by using the CLASS directive in the resource file, it must set this member to DLGWINDOWEXTRA.

-field hInstance

Type: HINSTANCE

A handle to the instance that contains the window procedure for the class.

-field hIcon

Type: HICON

A handle to the class icon. This member must be a handle to an icon resource. If this member is NULL, the system provides a default icon.

-field hCursor

Type: HCURSOR

A handle to the class cursor. This member must be a handle to a cursor resource. If this member is NULL, an application must explicitly set the cursor shape whenever the mouse moves into the application's window.

-field hbrBackground

Type: HBRUSH

A handle to the class background brush. This member can be a handle to the physical brush to be used for painting the background, or it can be a color value. A color value must be one of the following standard system colors (the value 1 must be added to the chosen color). If a color value is given, you must convert it to one of the following HBRUSH types:

  • 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
The system automatically deletes class background brushes when the class is unregistered by using UnregisterClass. An application should not delete these brushes.

When this member is NULL, an application must paint its own background whenever it is requested to paint in its client area. To determine whether the background must be painted, an application can either process the WM_ERASEBKGND message or test the fErase member of the PAINTSTRUCT structure filled by the BeginPaint function.

-field lpszMenuName

Type: LPCTSTR

The resource name of the class menu, as the name appears in the resource file. If you use an integer to identify the menu, use the MAKEINTRESOURCE macro. If this member is NULL, windows belonging to this class have no default menu.

-field lpszClassName

Type: LPCTSTR

A pointer to a null-terminated string or is an atom. If this parameter is an atom, it must be a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpszClassName; the high-order word must be zero.

If lpszClassName is a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, or any of the predefined control-class names.

The maximum length for lpszClassName is 256. If lpszClassName is greater than the maximum length, the RegisterClass function will fail.

-see-also

BeginPaint

Conceptual

CreateWindow

CreateWindowEx

GetDC

MAKEINTRESOURCE

Other Resources

PAINTSTRUCT

Reference

RegisterClass

UnregisterClass

WM_PAINT

WNDCLASSEX

Window Classes

WindowProc

-remarks

Note

The winuser.h header defines WNDCLASS as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.