Структура CREATESTRUCT определяет параметры инициализации, передаваемые оконной процедуре прикладной программы.
Синтаксис
typedef struct tagCREATESTRUCT { LPVOID lpCreateParams; HINSTANCE hInstance; HMENU hMenu; HWND hwndParent; int cy; int cx; int y; int x; LONG style; LPCTSTR lpszName; LPCTSTR lpszClass; DWORD dwExStyle; } CREATESTRUCT;
Элементы структуры
lpCreateParams Замечания Смотри также Размещение и совместимость CREATESTRUCT
Указывает на данные, которые нужно использовать для создания окна. Windows NT: Этот элемент структуры является значением адреса со спецификатором
hInstance
Идентифицирует модуль, который владеет новым окном.
hMenu
Идентифицирует меню, которое используется созданным окном.
hwndParent
Идентифицирует родительское окно, если созданное окно - дочернее окно. Если окно является владельцем, этот элемент идентифицирует окно владельца. Если окно - не дочернее или не находящееся в собственности окно, этот элемент - ПУСТО (NULL).
cy
Устанавливает высоту нового окна, в пикселях.
cx
Устанавливает ширину нового окна, в пикселях.
y
Устанавливает y-координату верхнего левого угла нового окна. Если новое окно - дочернее окно, координаты - относительно родительского окна. Иначе, координаты - относительно экранного начала координат.
x
Устанавливает x-координату верхнего левого угла нового окна. Если новое окно - дочернее окно, координаты - относительно родительского окна. Иначе, координаты - относительно экранного начала координат.
style
Определяет стиль для нового окна.
lpszName
Указывает на строку с нулевым символом в конце, которая определяет имя нового окна.
lpszClass
Указывает на строку с нулевым символом в конце, которая определяет имя класса нового окна.
dwExStyle
Определяет расширенный стиль для нового окна.
Windows NT: Ссылаясь на элемент lpCreateParams структуры CREATESTRUCT, поскольку указатель может быть не выровненный по границе ДВОЙНОГО СЛОВА (DWORD), прикладная программа должена обратиться к данным, использующим указатель, который был объявлен с ис-пользованием типа НЕВЫРОВНЕННЫЙ (UNALIGNED), как показано в следующем примере:
typedef struct tagMyData
{
. . .; // Определите данные для создания окна здесь
} MYDATA;
typedef struct tagMyDlgData {
SHORT cbExtra;
MYDATA myData;
} MYDLGDATA, UNALIGNED *PMYDLGDATA;
PMYDLGDATA pMyDlgdata = (PMYDLGDATA) (((LPCREATESTRUCT) lParam)->lpcreateParams);
CreateWindow, CreateWindowEx
Windows NT Да
Win95 Да
Win32s Да
Импортируемая библиотека -
Заголовочный файл winuser.h
Unicode WinNT
Замечания по платформе Не имеется