指定されたウィンドウの位置とサイズを取得します。
WinGetPos &OutX, &OutY, &OutWidth, &OutHeight, WinTitle, WinText, ExcludeTitle, ExcludeText
型:VarRef
省略したときは、対応する値は保存されません。そうでないときは、ターゲットウィンドウの左上隅のX座標とY座標をピクセル単位で格納する出力変数への参照を指定します。
型:VarRef
省略したときは、対応する値は保存されません。そうでないときは、ターゲットウィンドウの幅と高さをピクセル単位で格納する出力変数への参照を指定します。
もしこれらの項目が未設定または省略されたときは、最後に見つかったウィンドウが使用されます。そうでないときは、WinTitleに ウィンドウタイトルまたはターゲットウィンドウを識別するための他の基準、および/またはWinTextにターゲットウィンドウの単一のテキスト要素からの部分文字列(付属のWindow Spyユーティリティを使えばわかります)を指定します。
ExcludeTitleとExcludeTextはウィンドウのタイトルまたはテキストで除外するために使用します。指定の仕方はWinTitleとWinTextに似ていますが、ExcludeTitleはウィンドウのタイトル以外の基準(ウィンドウクラスやHWNDなど)を認識しません。
ウィンドウのタイトルとテキストは大文字と小文字を区別します。DetectHiddenWindows関数 と DetectHiddenText関数で変更しない限り、初期設定では非表示ウィンドウは検出されず、非表示テキストは検出されます。SetTitleMatchMode関数で変更しない限り、初期設定ではウィンドウのタイトルはその中のどこかにWinTitleまたはExcludeTitleを含んでいれば一致します。
ウィンドウが見つからないときは、TargetErrorがスローされます。
WinTitleが"Program Manager"
のときは、この関数はデスクトップのサイズを取得します。通常、これは現在の画面解像度と同じです。
最小化されたウィンドウは、位置とサイズを保持しています。この場合に返す値はOSや設定によりますが、通常はXとY座標が-32000、幅と高さが0です。
マウスが現在カーソルを置いているウィンドウとコントロールの名前を知るには、MouseGetPosを使います。
この関数が返す座標にはウィンドウのタイトルバー、メニュー、ボーダーが含まれるため、OSのバージョンやテーマに依存する可能性があります。異なるシステム間でより一貫した値を取得するには、代わりにWinGetClientPosを使用することを検討してください。
DPI設定が異なる複数のスクリーンを持つシステムでは、OSのDPIスケーリングにより、返される位置やサイズが予想と異なる場合があります。
WinMove、WinGetClientPos、ControlGetPos、WinGetTitle、WinGetText、ControlGetText
WinGetPos &X, &Y, &W, &H, "Calculator" MsgBox "Calculator is at " X "," Y " and its size is " W "x" H