Compartir a través de


Estructura WNDCLASSW (winuser.h)

Contiene los atributos de clase de ventana registrados por la función RegisterClass.

Esta estructura se ha reemplazado por la estructura WNDCLASSEX usada con la función RegisterClassEx. Todavía puede usar WNDCLASS y RegisterClass si no es necesario establecer el icono pequeño asociado a la clase de ventana.

Sintaxis

typedef struct tagWNDCLASSW {
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCWSTR   lpszMenuName;
  LPCWSTR   lpszClassName;
} WNDCLASSW, *PWNDCLASSW, *NPWNDCLASSW, *LPWNDCLASSW;

Miembros

style

Tipo: UINT

Los estilos de clase. Este miembro puede ser cualquier combinación de estilos de clase.

lpfnWndProc

Tipo: WNDPROC de

Puntero al procedimiento de ventana. Debe usar la función CallWindowProc para llamar al procedimiento de ventana. Para obtener más información, vea WindowProc.

cbClsExtra

Tipo: int

Número de bytes adicionales que se van a asignar después de la estructura de clase de ventana. El sistema inicializa los bytes en cero.

cbWndExtra

Tipo: int

Número de bytes adicionales que se van a asignar después de la instancia de ventana. El sistema inicializa los bytes en cero. Si una aplicación usa WNDCLASS para registrar un cuadro de diálogo creado mediante la directiva CLASS en el archivo de recursos, debe establecer este miembro en DLGWINDOWEXTRA.

hInstance

Tipo: HINSTANCE

Identificador de la instancia que contiene el procedimiento de ventana de la clase .

hIcon

Tipo: HICON

Identificador del icono de clase. Este miembro debe ser un identificador de un recurso de icono. Si este miembro es NULL, el sistema proporciona un icono predeterminado.

hCursor

Tipo: HCURSOR

Identificador del cursor de clase. Este miembro debe ser un identificador para un recurso de cursor. Si este miembro es NULL, una aplicación debe establecer explícitamente la forma del cursor cada vez que el mouse se mueve a la ventana de la aplicación.

hbrBackground

Tipo: HBRUSH de

Identificador del pincel de fondo de clase. Este miembro puede ser un identificador del pincel físico que se usará para pintar el fondo o puede ser un valor de color. Un valor de color debe ser uno de los siguientes colores del sistema estándar (el valor 1 debe agregarse al color elegido). Si se proporciona un valor de color, debe convertirlo en uno de los siguientes tipos 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
El sistema elimina automáticamente los pinceles de fondo de clase cuando la clase no se registra mediante UnregisterClass. Una aplicación no debe eliminar estos pinceles.

Cuando este miembro es NULL, una aplicación debe pintar su propio fondo siempre que se solicite pintar en su área cliente. Para determinar si se debe pintar el fondo, una aplicación puede procesar el mensaje de WM_ERASEBKGND o probar el miembro fErase del PAINTSTRUCT estructura rellenada por la función BeginPaint.

lpszMenuName

Tipo: LPCTSTR de

Nombre del recurso del menú de clases, como aparece en el archivo de recursos. Si usa un entero para identificar el menú, use la macro MAKEINTRESOURCE. Si este miembro es NULL, las ventanas que pertenecen a esta clase no tienen ningún menú predeterminado.

lpszClassName

Tipo: LPCTSTR de

Un puntero a una cadena terminada en null o es un átomo. Si este parámetro es un átomo, debe ser un átomo de clase creado por una llamada anterior a la función RegisterClass o RegisterClassEx. El átomo debe estar en la palabra de orden bajo de lpszClassName; la palabra de orden superior debe ser cero.

Si lpszClassName es una cadena, especifica el nombre de clase de ventana. El nombre de clase puede ser cualquier nombre registrado con RegisterClass o RegisterClassEx, o cualquiera de los nombres predefinidos de clase de control.

La longitud máxima de lpszClassName es 256. Si lpszClassName es mayor que la longitud máxima, se producirá un error en la función RegisterClass.

Observaciones

Nota

El encabezado winuser.h define WNDCLASS como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
encabezado de winuser.h (incluya Windows.h)

Consulte también

beginPaint

conceptual de

createWindow

createWindowEx

getDC

MAKEINTRESOURCE

otros recursos

PAINTSTRUCT

de referencia de

registerClass

unregisterClass

WM_PAINT

WNDCLASSEX

clases de ventana de

WindowProc