WinGetIDLast

(一致するウィンドウが複数ある場合に、最後または一番下のウィンドウのウィンドウハンドル(HWND)を返します。

HWND := WinGetIDLast(WinTitle, WinText, ExcludeTitle, ExcludeText)

パラメータ

WinTitle、WinText、ExcludeTitle、ExcludeText

型:文字列整数またはオブジェクト

もしこれらの項目が未設定または省略されたときは、最後に見つかったウィンドウが使用されます。そうでないときは、WinTitleウィンドウタイトルまたはターゲットウィンドウを識別するための他の基準、および/またはWinTextにターゲットウィンドウの単一のテキスト要素からの部分文字列(付属のWindow Spyユーティリティを使えばわかります)を指定します。

ExcludeTitleExcludeTextはウィンドウのタイトルまたはテキストで除外するために使用します。指定の仕方はWinTitleWinTextに似ていますが、ExcludeTitleはウィンドウのタイトル以外の基準(ウィンドウクラスやHWNDなど)を認識しません。

ウィンドウのタイトルとテキストは大文字と小文字を区別します。DetectHiddenWindows関数 と DetectHiddenText関数で変更しない限り、初期設定では非表示ウィンドウは検出されず、非表示テキストは検出されます。SetTitleMatchMode関数で変更しない限り、初期設定ではウィンドウのタイトルはその中のどこかにWinTitleまたはExcludeTitleを含んでいれば一致します。

戻り値

型:整数

一致するウィンドウが複数あるときは、この関数は最後または一番下のウィンドウのウィンドウハンドル(HWND)を返します。

エラー処理

ウィンドウが見つからないときは、TargetErrorがスローされます。

備考

一致するものが1つしかないときは、WinGetIDと同じように実行される。

ウィンドウのIDは、そのウィンドウが存在している間だけ有効です。言い換えれば、アプリケーションを再起動すれば、ウィンドウには新しいIDを割り振られることになります。

マウスカーソルの下にあるウィンドウのIDは、MouseGetPos関数で取得できます。コントロールのHWNDを検出するには(PostMessageSendMessage、またはDllCallで使用するため)、ControlGetHwnd関数またはMouseGetPos関数を使用します。

WinGetID, ControlGetHwnd, Hwnd property (Gui object), Win functions, Control functions