Prev Next
The DLGITEMTEMPLATEEX structure is not defined in any standard header
file. The structure definition is provided here to explain the format of an
extended template for a dialog box.
For each control in a dialog box, an extended dialog box template has a block
of data that uses the DLGITEMTEMPLATEEX format to describe the control.
For a description of the format of an extended dialog box template, see DLGTEMPLATEEX.
// typedef struct {
// DWORD helpID;
// DWORD exStyle;
// DWORD style;
// short x;
// short y;
// short cx;
// short cy;
// WORD id;
// sz_Or_Ord windowClass; // name or ordinal of a window class
// sz_Or_Ord title; // title string or ordinal of a resource
// WORD extraCount; // bytes of following creation data
// } DLGITEMTEMPLATEEX;
Members
-
helpID
-
Specifies the help context identifier for the control. When the system sends a
WM_HELP message, it passes the helpID value in
the dwContextId member of the HELPINFO
structure.
-
dwExtendedStyle
-
Specifies extended styles for a window. This member is not used to create
controls in dialog boxes, but applications that use dialog box templates can
use it to create other types of windows.
-
style
-
Specifies the style of the control. This member can be a combination of window
style values (such as WS_BORDER) and one or more of the control style values
(such as BS_PUSHBUTTON and ES_LEFT).
-
x
-
Specifies the x-coordinate, in dialog box units, of the upper-left corner of
the control. This coordinate is always relative to the upper-left corner of
the dialog box’s client area.
-
y
-
Specifies the y-coordinate, in dialog box units, of the upper-left corner of
the control. This coordinate is always relative to the upper-left corner of
the dialog box’s client area.
-
cx
-
Specifies the width, in dialog box units, of the control.
-
cy
-
Specifies the height, in dialog box units, of the control.
-
id
-
Specifies the control identifier.
-
windowClass
-
Specifies a variable-length array of 16-bit elements that identifies the
window class of the control. If the first element of this array is any value
other than 0xFFFF, the system treats the array as a null-terminated Unicode
string that specifies the name of a registered window class.
If the first element is 0xFFFF, the array has one additional element that
specifies the ordinal value of a predefined system class. The ordinal can be
one of the following atom values.
Value
|
Meaning
|
0x0080
|
Button
|
0x0081
|
Edit
|
0x0082
|
Static
|
0x0083
|
List box
|
0x0084
|
Scroll bar
|
0x0085
|
Combo box
|
-
title
-
Specifies a variable-length array of 16-bit elements that contains the initial
text or resource identifier of the control. If the first element of this array
is 0xFFFF, the array has one additional element that specifies an ordinal
value that identifies a resource, such as an icon, in an executable file. You
can use a resource identifier for controls, such as static icon controls, that
load and display an icon or other resource rather than text.
If the first element is any value other than 0xFFFF, the system treats the
array as a null-terminated Unicode string that specifies the initial text.
-
extraCount
-
Specifies the number of bytes of creation data that follow this member. If
this value is greater than zero, the creation data begins at the next DWORD
boundary. This creation data can be of any size and format. The control’s
window procedure must be able to interpret the data. When the system creates
the control, it passes a pointer to this data in the lParam parameter
of the WM_CREATE message that it sends to the
control.
Remarks
An extended template for a dialog box consists of a DLGTEMPLATEEX
header followed by a DLGITEMTEMPLATEEX structure for each control in
the dialog box.
Each DLGITEMTEMPLATEEX structure must be aligned on a DWORD
boundary. The variable-length windowClass and title arrays must
be aligned on WORD boundaries. The creation data array, if any, must be
aligned on a DWORD boundary.
If you specify character strings in the windowClass and title
arrays, you must use Unicode strings. To create code that works on both
Windows NT and Windows 95, use the MultiByteToWideChar function to
generate these Unicode strings.
The x, y, cx, and cy members specify values in
dialog box units. You can convert these values to screen units (pixels) by
using the MapDialogRect function.
See Also
CreateDialogIndirect, CreateDialogIndirectParam,
CreateWindowEx, DialogBoxIndirect,
DialogBoxIndirectParam, DLGITEMTEMPLATE,
DLGTEMPLATE, DLGTEMPLATEEX,
MapDialogRect, MultiByteToWideChar