拡張ウィンドウスタイル

以下の表は、拡張ウィンドウのスタイルを指定する値です。拡張ウィンドウスタイルは以下の値の組み合わせて指定します。

拡張ウィンドウスタイルはCreateWindowEx関数、SetWindowLong関数のパラメータとして指定されます。また、GetWindowLong関数の戻り値として取得されます。

0x00000000 (WS_EX_LEFT)

一般的な左揃えされたプロパティを持つウィンドウを作成します。この属性はデフォルトです。

0x00000000 (WS_EX_LTRREADING)

左から右への読み取り順序を持つプロパティを持ったウィンドウを作成します。この属性はデフォルトです。

0x00000000 (WS_EX_RIGHTSCROLLBAR)

垂直スクロールバーがある場合には、スクロールバーがクライアント領域の右側に置かれます。この属性はデフォルトです。

0x00000001 (WS_EX_DLGMODALFRAME)

二重の境界線を持つウィンドウを作成します。

0x00000004 (WS_EX_NOPARENTNOTIFY)

このスタイルで作成された子ウィンドウが作成されたり破棄されたりするときに、その親ウィンドウにWM_PARENTNOTIFYメッセージを送らないように指定します。

0x00000008 (WS_EX_TOPMOST)

このスタイルで作成されたウィンドウは最前面ウィンドウとなることを表します。ウィンドウが非アクティブな状態でも、ほかのウィンドウの前面に表示されます。このスタイルを追加・削除するには、SetWindowPos関数を使用します。

0x00000010 (WS_EX_ACCEPTFILES)

このスタイルで作成されたウィンドウがドラッグアンドドロップファイルを受け入れることを表します。

0x00000020 (WS_EX_TRANSPARENT)

このスタイルで作成されたウィンドウは、(同じスレッドで作成された)このウィンドウの下にある兄弟ウィンドウが描画されるまでは再描画されません。下にあるウィンドウのビットは既に描画されているため、このウィンドウは透明であるように見えます。

0x00000040 (WS_EX_MDICHILD)

マルチドキュメントインターフェース(MDI)の子ウィンドウを作成します。

0x00000080 (WS_EX_TOOLWINDOW)

ツールウィンドウを作成します。一般にフローティングツールバーとして使用されます。ツールウィンドウは標準のタイトルバーより小さいタイトルバーを持っており、ウィンドウタイトルは小さいフォントで描画されます。ツールウィンドは、タスクバーや、ユーザーが [Alt]+[Tab] キーを押したときに現れるダイアログ内には表示されません。ツールウィンドウがシステムメニューを持つ場合、タイトルバーにアイコンが表示されませんが、右クリックや [Alt]+[Space] キーを押すことによってシステムメニューを表示させることができます。

0x00000100 (WS_EX_WINDOWEDGE)

ウィンドウが盛り上がった縁の境界線を持つことを表します。

0x00000188 (WS_EX_PALETTEWINDOW)

WS_EX_WINDOWEDGEWS_EX_TOOLWINDOWWS_EX_TOPMOSTの組み合わせです。

0x00000200 (WS_EX_CLIENTEDGE)

縁が沈んで見える境界線を持つウィンドウであることを表します。

0x00000300 (WS_EX_OVERLAPPEDWINDOW)

WS_EX_WINDOWEDGEWS_EX_CLIENTEDGEの組み合わせです。

0x00000400 (WS_EX_CONTEXTHELP)

ダイアログボックスのタイトルバーに疑問符([?])ボタンを追加します。ユーザーがこのボタンをクリックすると、マウスポインタに疑問符が付きます。その後、ユーザーが子ウィンドウをクリックすると、子ウィンドウはWM_HELPメッセージを受け取ります。子ウィンドウはこのメッセージを親ウィンドウのウィンドウプロシージャに渡すべきです。親ウィンドウはHELP_WM_HELPコマンドを用いてWinHelp関数を呼び出すべきです。ヘルプアプリケーションは、子ウィンドウに対するヘルプを含んだポップアップウィンドウを表示します。

このスタイルをWS_MAXIMIZEBOXWS_MINIMIZEBOXとともに指定することはできません。

0x00001000 (WS_EX_RIGHT)

右揃えされたプロパティを持つウィンドウを作成します。このスタイルはウィンドウクラスに依存します。このスタイルは、ヘブライ語やアラビア語をサポートしているシステムで有効です。それ以外では、このスタイルは無視されます。

スタティックコントロールやエディットコントロールに対してこのスタイルを用いると、それぞれSS_RIGHTスタイルやES_RIGHTスタイルと同じ効果になります。ボタンコントロールに対してこのスタイルを用いると、BS_RIGHTスタイルおよびBS_RIGHTBUTTONスタイルと同じ効果になります。

0x00002000 (WS_EX_RTLREADING)

右から左への読み取り順序を持つプロパティを持ったウィンドウを作成します。このスタイルは、ヘブライ語やアラビア語をサポートしているシステムで有効です。それ以外では、このスタイルは無視されます。

0x00004000 (WS_EX_LEFTSCROLLBAR)

垂直スクロールバーがある場合には、垂直スクロールバーがクライアント領域の左側に置かれます。このスタイルは、ヘブライ語やアラビア語をサポートしているシステムで有効です。それ以外では、このスタイルは無視されます。

0x00010000 (WS_EX_CONTROLPARENT)

ウィンドウはダイアログボックスナビゲーションの役割を果たす子ウィンドウを含んでいます。このスタイルが指定されると、ファイアログマネージャは、ユーザーが[Tab]キーやカーソルキー、キーボードニーモニックを処理するようなナビゲーション操作を行ったときに、このウィンドウの子ウィンドウに対する処理を行います。

0x00020000 (WS_EX_STATICEDGE)

ユーザーの入力を受け付けない項目用の、立体的に見える境界スタイルを持つウィンドウを作成します。

0x00040000 (WS_EX_APPWINDOW)

ウィンドウが可視状態のときに、トップレベルウィンドウがタスクバー上に置かれるようにします。

0x00080000 (WS_EX_LAYERED)

Windows 2000/XP: レイヤーウィンドウを作成します。子ウィンドウにこのスタイルを使用することはできません。また、CS_OWNDCまたはCS_CLASSDCクラススタイルを持つウィンドウにこのスタイルを使用することはできません。

0x00100000 (WS_EX_NOINHERITLAYOUT)

Windows 2000/XP: このスタイルのウィンドウは子ウィンドウにウィンドウレイアウトを渡しません。

0x00400000 (WS_EX_LAYOUTRTL)

アラビア語・ヘブライ語Windows 98/Me/2000/XP: 水平方向の原点が右端にあるウィンドウを作成します。水平方向の座標の値は左に向かって増加します。

0x02000000 (WS_EX_COMPOSITED)

Windows XP: すべての子孫ウィンドウをダブルバッファリングを用いて下から上に向かっての描画順序で描画します。CS_OWNDCまたはCS_CLASSDCクラススタイルを持つウィンドウにこのスタイルを使用することはできません。

0x08000000 (WS_EX_NOACTIVATE)

Windows 2000/XP: このスタイルのトップレベルウィンドウは、ユーザにクリックされたときにフォアグラウンドウィンドウになりません。システムは、ユーザーがフォアグラウンドウィンドウを最小化したり閉じたりしたときに、このウィンドウがフォアグラウンドにならないようにします。

このウィンドウをアクティブにするには、SetActiveWindow関数またはSetForegroundWindow関数を使用します。

デフォルトでは、ウィンドウはタスクバーに表示されません。タスクバーに表示されるようにするには、WS_EX_APPWINDOWスタイルを使用します。