CreateWindowEx関数
HWND CreateWindowEx(
DWORD dwExStyle,
LPCTSTR lpClassName,
LPCTSTR lpWindowName,
DWORD dwStyle,
int x,
int y,
int nWidth,
int nHeight,
HWND hWndParent,
HMENU hMenu,
HINSTANCE hInstance,
LPVOID lpParam
);
拡張ウィンドウ・スタイルを指定して、ウィンドウを作成する為には、CreateWindowの代わりに、その機能拡張版であるCreateWindowExを利用する。
CreateWindowExのプロトタイプは、先頭に拡張ウィンドウ・スタイルを指定するdwExStyleが追加されている点を除けばCreateWindowと同じである。
WS_EX_ACCEPTFILES | このスタイルで作成されたウィンドウでは、ファイルをドラッグ アンド ドロップできます。 |
WS_EX_APPWINDOW | 一番上にあるウィンドウを表示するときに、強制的にタスクバーに含みます。 |
WS_EX_CLIENTEDGE | ウィンドウを 3 次元で表示することを指定します。つまり、ウィンドウには、くぼんだ境界線が付きます。 |
WS_EX_CONTEXTHELP | ウィンドウのタイトル バーに疑問符 (?) を追加します。ユーザーが疑問符 (?) をクリックすると、カーソルがポインタの付いた疑問符 (?) に変わります。続いてユーザーが子ウィンドウをクリックすると、その子ウィンドウが WM_HELP メッセージを受け取ります。 |
WS_EX_CONTROLPARENT | ユーザーが、Tab キーを使ってウィンドウ内の子ウィンドウ間を移動できるようにします。 |
WS_EX_DLGMODALFRAME | 二重の境界を持つウィンドウを指定します。パラメータ dwStyle に WS_CAPTION スタイル フラグを指定することにより、タイトル バーを追加することもできます。 |
WS_EX_LEFT | ウィンドウに汎用左揃えプロパティを指定します。これは、既定の設定です。 |
WS_EX_LEFTSCROLLBAR | クライアント領域の左に垂直スクロール バーを配置します。 |
WS_EX_LTRREADING | 左から右への読み取り順序でウィンドウのテキストを表示します。これは、既定の設定です。 |
WS_EX_MDICHILD | MDI 子ウィンドウを作成します。 |
WS_EX_NOPARENTNOTIFY | このスタイルを指定されている子ウィンドウは、作成または破棄されるときに親ウィンドウに WM_PARENTNOTIFY メッセージを送りません。 |
WS_EX_OVERLAPPEDWINDOW | WS_EX_CLIENTEDGE スタイルと WS_EX_WINDOWEDGE スタイルを組み合わせます。 |
WS_EX_PALETTEWINDOW | WS_EX_WINDOWEDGE スタイルと WS_EX_TOPMOST スタイルを組み合わせます。 |
WS_EX_RIGHT | ウィンドウに汎用右揃えプロパティを指定します。このスタイルは、ウィンドウ クラスに依存します。 |
WS_EX_RIGHTSCROLLBAR | クライアント領域の右に垂直スクロール バー (存在する場合) を配置します。これは、既定の設定です。 |
WS_EX_RTLREADING | 右から左への読み取り順序でウィンドウのテキストを表示します。 |
WS_EX_STATICEDGE | 3 次元の境界線スタイルを持つウィンドウを作成します。このウィンドウは、ユーザーの入力を受け付けない項目用に使用します。 |
WS_EX_TOOLWINDOW | ツール ウィンドウを作成します。このウィンドウは、フローティング ツール バーとして使用します。ツール ウィンドウのタイトル バーは通常よりも短く、ウィンドウのタイトルはより小さいフォントで描画されます。タスク バーや、ユーザーが Alt キーを押しながら Tab キーを押して表示したウィンドウには、ツール ウィンドウは表示されません。 |
WS_EX_TOPMOST | このスタイルで作成されたウィンドウは、すべてのウィンドウの上に配置され、アクティブでなくなった場合でも、引き続きほかのウィンドウの上に表示されたままになります。アプリケーションは、SetWindowPos メンバ関数を使って、この属性を追加および削除できます。 |
WS_EX_TRANSPARENT | このスタイルで作成されたウィンドウは透明になります。つまり、このウィンドウの下にあるウィンドウが見えなくなることはありません。このスタイルで作成されたウィンドウは、そのウィンドウの下にある兄弟ウィンドウがすべて更新された後にだけ、WM_PAINT メッセージを受け取ります。 |
WS_EX_WINDOWEDGE | 縁の浮き出した境界線を持つウィンドウを指定します。 |
・ウィンドウの外見や振る舞いを指定するパラメータには、ウィンドウ・スタイルの他に拡張ウィンドウ・スタイルがある。
これは、Windows95が登場した際に新たに定義されたもので、クライアント領域をウィンドウ枠よりもへこませて立体的に見せるかどうかといった点を指定できる。
・CreateWindowを使ってウィンドウを作成するのは、CreateWindowExの引数dwExStyleに0を指定して呼び出すのと同じである。
Comments