2011-03-16 7 views
0

は、this threadに、私はこの答えを受け取った:AHK:GUIクライアント領域の幅を正しく理解していますか? AHKのフォーラムで

コントロールがクライアント領域よりも大きいですが、それは常に「下」、またはそれに制限されます、クライアントウィンドウを

これを読んで、私はクライアント領域の幅についてかなり混乱しました。私はいつもクライアント領域の幅がすべてのコントロールの幅の合計に等しいと考えました(それらがすべて1つの水平線にあり、その1つの線のみがウィンドウにあります)。 、そして余白(窓の境界と最初のコントロールとの間の距離と最後のコントロールと境界の距離)がそれを前提に間違っているようです。

ここで、GUIコントロールの幅とクライアント領域の幅の関係を教えてください。私はそこでこの質問をしましたが、そこの答えはすぐに来ていないようです。

答えて

0

コントロールのクライアントではない領域は、境界線/タイトルバーなどです。通常、テーマによって一貫したスタイルでウィンドウによって描画されます。

クライアントの領域はすべて内です。ボーダー - コントロールをユニークにし、ペイント時に通常アクセスする部分です。 - 例えばのためのWM_NCPAINTのデフォルト処理WM_NCPAINTWM_PAINT

Windowsは、二つのメッセージで自身をペイントするウィンドウを伝えますトップレベルのウィンドウは、ウィンドウに設定されたスタイルフラグと現在のテーマに従って境界線/タイトルバーを描画します。 WM_PAINTのデフォルト処理は何も行いません(背景色はWM_ERASEBKGNDによって処理されます)

+0

こんにちはエリック、あなたの答えをありがとう。ですから、 'GuiControl、Move'コマンドでテキストコントロールの幅を広げると、クライアント領域の幅も広がりますか? –

+0

@ Benny-D:はい。クライアントとフルサイズの関係は通常固定です。 – Erik

関連する問題