ウィンドウをデスクトップに復元する場合に表示されるビットマップを生成しようとしています。 GetWindowRectはサイズを最小にし、GetWindowplacementは返す場所を返します。しかし、私はそれがどれくらいの大きさであるかを教えてくれるAPIを見つけることはできません。windowsの復元サイズの決定
復元した場合のウィンドウの大きさはどのように決定しますか?
ウィンドウをデスクトップに復元する場合に表示されるビットマップを生成しようとしています。 GetWindowRectはサイズを最小にし、GetWindowplacementは返す場所を返します。しかし、私はそれがどれくらいの大きさであるかを教えてくれるAPIを見つけることはできません。windowsの復元サイズの決定
復元した場合のウィンドウの大きさはどのように決定しますか?
GetWindowPlacement
本当に必要なものです。 rcNormalPosition
は、正規化された位置の座標を含むRECT
です。または、WPF_RESTORETOMAXIMIZED
がウィンドウ配置flags
にある場合は、ウィンドウが関連付けられているモニターの作業領域を使用します。
GetWindowPlacement
は、Windows 7のrcNormalPosition
に誤った情報を返すことがあります。これは、ハーフスクリーンのAeroスナップ機能を使用したときに発生しました。あなたがそれをした後、質問をするときにウィンドウがまだ正規化されていれば、rcNormalPosition
に戻り、RECT
はAeroスナップ位置と一致しません。ウィンドウが正規化されている場合は、単にGetWindowRect
を使用して対処してください。
GetWindowPlacement
は、ウィンドウの大きさを正確に示します。 rcNormalPosition
フィールドはRECT
です。高さと幅を取得し、下から上を引いて、右から左に引いてください。
注矩形ワークスペースにある約MSDNのコメント座標は、スクリーン座標ではない:
ワークスペース座標が画面異なる彼らはに(タスクバーを含む)アプリケーションツールバーの位置とサイズをとることで座標アカウント。作業領域座標(0,0)は作業領域領域の左上隅で、アプリケーションツールバーで使用されていない領域です。
'WINDOWPLACEMENT :: rcNormalPosition'はあなたのために機能しませんか? –