次の方法で共有


DLGITEMTEMPLATE 構造体 (winuser.h)

ダイアログ ボックス内のコントロールの寸法とスタイルを定義します。 これらの構造体の 1 つ以上を DLGTEMPLATE 構造体と組み合わせて、ダイアログ ボックスの標準テンプレートを形成します。

構文

typedef struct {
  DWORD style;
  DWORD dwExtendedStyle;
  short x;
  short y;
  short cx;
  short cy;
  WORD  id;
} DLGITEMTEMPLATE;

メンバー

style

型: DWORD

コントロールのスタイル。 このメンバーには、 ウィンドウ スタイル値 ( WS_BORDER など) と 1 つ以上の コントロール スタイル値 ( BS_PUSHBUTTONES_LEFTなど) を組み合わせて使用できます。

dwExtendedStyle

型: DWORD

ウィンドウの拡張スタイル。 このメンバーは、ダイアログ ボックスでコントロールを作成するために使用されませんが、ダイアログ ボックス テンプレートを使用するアプリケーションでは、それを使用して他の種類のウィンドウを作成できます。 値の一覧については、「 拡張ウィンドウ のスタイル」を参照してください。

x

型: short

コントロールの左上隅の x 座標 (ダイアログ ボックス単位)。 この座標は、常にダイアログ ボックスのクライアント領域の左上隅を基準にしています。

y

型: short

コントロールの左上隅の y 座標 (ダイアログ ボックス単位)。 この座標は、常にダイアログ ボックスのクライアント領域の左上隅を基準にしています。

cx

型: short

コントロールの幅 (ダイアログ ボックス単位)。

cy

型: short

コントロールの高さ (ダイアログ ボックス単位)。

id

種類: WORD

コントロール識別子。

解説

ダイアログ ボックスの標準テンプレートでは、 DLGITEMTEMPLATE 構造体の直後に、コントロールのクラス、タイトル、および作成データを指定する 3 つの可変長配列が常に続きます。 各配列は、1 つ以上の 16 ビット要素で構成されます。

テンプレート内の各 DLGITEMTEMPLATE 構造体は 、DWORD 境界に配置する必要があります。 クラスとタイトルの配列は 、WORD の境界に配置する必要があります。 作成データ配列は 、WORD 境界に配置する必要があります。

DLGITEMTEMPLATE 構造体の直後には、コントロールのウィンドウ クラスを指定するクラス配列があります。 この配列の最初の要素が0xFFFF以外の値である場合、システムは、登録されたウィンドウ クラスの名前を指定する null で終わる Unicode 文字列として配列を扱います。 最初の要素が0xFFFF場合、配列には、定義済みのシステム クラスの序数値を指定する 1 つの追加要素があります。 序数には、次のいずれかの atom 値を指定できます。

説明
0x0080 Button
0x0081 編集
0x0082 スタティック
0x0083 リスト ボックス
0x0084 スクロール バー
0x0085 コンボ ボックス
 

クラス配列の後には、コントロールの最初のテキストまたはリソース識別子を含むタイトル配列があります。 この配列の最初の要素が0xFFFF場合、配列には、実行可能ファイル内のアイコンなどのリソースの序数値を指定する 1 つの追加要素があります。 テキストではなくアイコンやその他のリソースを読み込んで表示する静的アイコン コントロールなどのコントロールには、リソース識別子を使用できます。 最初の要素が0xFFFF以外の値である場合、システムは配列を、初期テキストを指定する null で終わる Unicode 文字列として扱います。

作成データ配列は、タイトル配列の後の次の WORD 境界から始まります。 この作成データは、任意のサイズと形式にすることができます。 作成データ配列の最初の単語が 0 以外の場合は、作成データのサイズ (サイズ ワードを含む) をバイト単位で示します。 コントロールのウィンドウ プロシージャは、データを解釈できる必要があります。 システムは、コントロールを作成するときに、コントロールに送信するWM_CREATE メッセージの lParam パラメーターで、このデータへのポインターを渡します。

クラス配列とタイトル配列で文字列を指定する場合は、Unicode 文字列を使用する必要があります。 MultiByteToWideChar 関数を使用して、ANSI 文字列から Unicode 文字列を生成します。

xycx、cy の各メンバーは、ダイアログ ボックスの単位で値を指定します。 MapDialogRect 関数を使用して、これらの値を画面の単位 (ピクセル) に変換できます。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header winuser.h (Windows.h を含む)

関連項目

概念

CreateDialogIndirect

CreateDialogIndirectParam

CreateWindowEx

DLGITEMTEMPLATEEX

DLGTEMPLATE

DLGTEMPLATEEX

ダイアログ ボックス

DialogBoxIndirect

DialogBoxIndirectParam

MapDialogRect

MultiByteToWideChar

その他のリソース

リファレンス

WM_CREATE