The CREATESTRUCT structure defines the initialization parameters passed to the window procedure of an application. These members are identical to the parameters of the CreateWindowEx function.
Syntax 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;
Memebers:
- lpCreateParams Long pointer to additional data that can be used to create the window.
If the window is being created as a result of a call to the programming:windows:CreateWindowor CreateWindowEx function, this member contains the value of the lpParam parameter specified in the function call.
If the window being created is an MDI window, this member contains a pointer to an MDICREATESTRUCT structure.
Windows NT/2000 or later: If the window is being created from a dialog template, this member is the address of a SHORT value that specifies the size, in bytes, of the window creation data. The value is immediately followed by the creation data. For more information, see the following Remarks section.
- hInstance Handle to the module that owns the new window.
- hMenu Handle to the menu to be used by the new window.
- hwndParent Handle to the parent window, if the window is a child window. If the window is owned, this member identifies the owner window. If the window is not a child or owned window, this member is NULL.
- cy Specifies the height of the new window, in pixels.
- cx Specifies the width of the new window, in pixels.
- y Specifies the y-coordinate of the upper left corner of the new window. If the new window is a child window, coordinates are relative to the parent window. Otherwise, the coordinates are relative to the screen origin.
- x Specifies the x-coordinate of the upper left corner of the new window. If the new window is a child window, coordinates are relative to the parent window. Otherwise, the coordinates are relative to the screen origin.
- style Specifies the style for the new window.
- lpszName Long pointer to a null-terminated string that specifies the name of the new window.
- lpszClass Long pointer to a null-terminated string that specifies the class name of the new window.
- dwExStyle Specifies the extended style for the new window.
RemarksWindows NT/2000 or later: You should access the data represented
by the lpCreateParams member using a pointer that has been declared using
the UNALIGNED type, because the pointer may not be DWORD aligned. This is
demonstrated in the following code example:
typedef struct tagMyData {
// Define creation data here.
} MYDATA;
typedef struct tagMyDlgData {
SHORT cbExtra;
MYDATA myData;
} MYDLGDATA, UNALIGNED *PMYDLGDATA;
PMYDLGDATA pMyDlgdata = (PMYDLGDATA) (((LPCREATESTRUCT) lParam)->lpCreateParams);
Requirements
- Windows NT/2000 or later: Requires Windows NT 3.1 or later.
- Windows 95/98/Me: Requires Windows 95 or later.
- Header: Declared in Winuser.h; include Windows.h.
- Unicode: Declared as Unicode and ANSI structures.