掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
WindowハンドルからタイトルバーのRectを知りたい (ID:29777)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんばんは。 質問します。 現在、WindowのタイトルバーのRectを知りたくて 次の関数を作ってます。 function GetBarRect(WinHandle: HWND): TRect; begin //ウインドウサイズ取得 GetWindowRect(WinHandle, Result) ; With Result do begin // if Form.BorderStyle in [bsDialog,bsSingle,bsToolWindow] Then // //一重線のウインドウ場合 // begin // Right := Right - GetSystemMetrics(SM_CXSIZEFRAME)+1 ; // Left := Left + GetSystemMetrics(SM_CXSIZEFRAME)-1; // Top := Top + GetSystemMetrics(SM_CYSIZEFRAME)-1; // end else //二重線のウインドウの場合 begin Right := Right - GetSystemMetrics(SM_CXSIZEFRAME); Left := Left + GetSystemMetrics(SM_CXSIZEFRAME); Top := Top + GetSystemMetrics(SM_CYSIZEFRAME); end; // if Form.BorderStyle in [bsToolWindow,bsSizeToolWin] Then // //ツールウインドウの場合 // begin // Bottom := Top+GetSystemMetrics(SM_CYSMCAPTION) -1 // end else begin //標準のウインドウの場合 Bottom := Top+GetSystemMetrics(SM_CYCAPTION)-1; end; end; end; 上記ではコメントアウトしている部分でFormのBorderStyleの条件から Rectを求めようとしていますが 私が知りたいのは、ハンドルから求めたいと思っています。 このときに、一重線ウィンドウや、ツールウィンドウかどうかを ウィンドウハンドルのなんのスタイルから求めればよいでしょうか? ご存じでしたら教えてください。 よろしくお願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.