StatusBarGetText

標準のステータスバーコントロールからテキストを取得します。

Text := StatusBarGetText(Part#, WinTitle, WinText, ExcludeTitle, ExcludeText)

パラメータ

Part#

型:整数

If omitted, it defaults to 1, which is usually the part that contains the text of interest. それ以外の場合は、検索するバーの品番を指定する。

WinTitle、WinText、ExcludeTitle、ExcludeText

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

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

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

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

戻り値

型:文字列

この関数は、ステータスバーコントロールの単一部分のテキストを返す。

エラー処理

A TargetError is thrown if the target window could not be found or does not contain a standard status bar.

An OSError is thrown if there was a problem sending the SB_GETPARTS message or no reply was received within 2000 ms, or if memory could not be allocated within the process which owns the status bar.

備考

この関数は、ウィンドウ上の最初の標準ステータスバーを読み込もうとする(Microsoft common control:msctls_statusbar32). プログラムによっては、独自のステータスバーやMSコモンコントロールの特別なバージョンを使用しているものもあり、その場合はテキストを取得することができない。

通常、ループ内で StatusBarGetText を使用するよりも、StatusBarGetTextを繰り返し呼び出すことによるオーバーヘッドを回避する最適化を含むStatusBarWaitを使用する方が効率的です。

StatusBarWait, WinGetTitle, WinGetText, ControlGetText

ステータスバーの最初の部分からテキストを取得して分析する。

RetrievedText := StatusBarGetText(1, "Search Results")
if InStr(RetrievedText, "found")
    MsgBox "Search results have been found."