Структура WNDCLASS


Структура WNDCLASS содержит атрибуты класса окна, которые зарегистрированы функцией RegisterClass.

Эта структура была заменена структурой WNDCLASSEX, используемой с функцией RegisterClassEx. Вы можете все же использовать WNDCLASS и RegisterClass, если не нуждаетесь в установке маленького значка, связанного с классом окна.

Синтаксис

typedef struct {
    UINT  style;
    WNDPROC  lpfnWndProc;
    int  cbClsExtra;
    int  cbWndExtra;
    HINSTANCE  hInstance;
    HICON  hIcon;
    HCURSOR  hCursor;
    HBRUSH  hbrBackground;
    LPCTSTR  lpszMenuName;
    LPCTSTR  lpszClassName;
} WNDCLASS, *PWNDCLASS;

Члены структуры

style

Устанавливает стиль(и) класса. Этот член структуры может быть любой комбинацией Стилей класса.

lpfnWndProc

Указатель на оконную процедуру. Вы должны использовать функцию CallWindowProc, чтобы вызвать оконную процедуру. Дополнительную информацию, см. в описании WindowProc.

cbClsExtra

Устанавливает число дополнительных байт, которые размещаются вслед за структурой класса окна. Система инициализирует эти байты нулями.

cbWndExtra

Устанавливает число дополнительных байтов, которые размещаются вслед за экземпляром окна. Система инициализирует байты нулями. Если приложение использует WNDCLASS, чтобы зарегистрировать диалоговое окно, созданное при помощи использования директивы CLASS в файле ресурса, оно должно установить этот член структуры в DLGWINDOWEXTRA.

hInstance

Дескриптор экземпляра, который содержит оконную процедуру для класса.

hIcon

Дескриптор значка класса. Этот член структуры должен быть дескриптором ресурса значка. Если этот член структуры - ПУСТО (NULL), система предоставляет заданный по умолчанию значок.

hCursor

Дескриптор курсора класса. Этот член структуры должен быть дескриптором ресурса курсора. Если этот член структуры - ПУСТО (NULL), приложение должно явно устанавливать форму курсора всякий раз, когда мышь перемещается в окно прикладной программы.

hbrBackground

Дескриптор кисти фона класса. Этот член структуры может быть дескриптором физической кисти, которая используется, чтобы красить цветом фона, или это может быть кодом цвета. Код цвета должен быть одним из ниже перечисленных стандартных системных цветов (значение 1 должно добавляться к выбранному цвету). Если дается код цвета, Вы должны преобразовать его в один из ниже перечисленных типов HBRUSH:

Система автоматически удаляет кисти фона класса, когда класс становится незарегистрированным при помощи использования функции UnregisterClass. Приложение не должно удалять эти кисти.

Когда этот член структуры - ПУСТО (NULL), прикладная программа должна окрашивать в свой фон сама всякий раз, когда ей требуется рисовать в своей рабочей области. Чтобы выяснять, каким фоном нужно красить, приложение может, или обработать сообщение WM_ERASEBKGND или проверить член fErase  структуры PAINTSTRUCT, заполненной функцией BeginPaint.

lpszMenuName

Указатель на символьную строку с символом конца строки ('\0') (нуль-терминатором), которая устанавливает имя ресурса меню класса, которое как имя показывается в файле ресурса. Если Вы используете целое число, чтобы идентифицировать меню, используйте макрос MAKEINTRESOURCE. Если этот член структуры - ПУСТО (NULL), окна, принадлежащие этому классу,  не имеют никакого заданного по умолчанию меню.

lpszClassName

Указатель на символьную строку с нулем в конце или  атом. Если этот параметр - атом, это должен быть атом класса, созданный предыдущим вызовом функции RegisterClass или RegisterClassEx. Атом должен находиться в младшем слове lpszClassName; старшее слово должно быть нуль.

Если lpszClassName - символьная строка, она задает имя класса окна. Имя класса может быть любым именем, зарегистрированным функцией RegisterClass или RegisterClassEx, или какое - либо из предопределенных имен класса органов управления.

Смотри также

Обзор Классы окна, Структуры, используемые классами окна, BeginPaint, CreateWindow, CreateWindowEx, GetDC, MAKEINTRESOURCE, PAINTSTRUCT, RegisterClassUnregisterClassWNDCLASSEX, WindowProc, WM_PAINT

Размещение и совместимость WNDCLASS

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

-

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz