IUIAutomationEventHandlerGroup::AddActiveTextPositionChangedEventHandler メソッド (uiautomationclient.h)
アクティブなテキスト位置が変更されたときに処理するメソッドを (イベント ハンドラー グループに) 登録します。
構文
HRESULT AddActiveTextPositionChangedEventHandler(
[in] TreeScope scope,
[in] IUIAutomationCacheRequest *cacheRequest,
[in] IUIAutomationActiveTextPositionChangedEventHandler *handler
);
パラメーター
[in] scope
処理対象のイベントのスコープ (つまり、イベントが要素自体に関するものであるか、先祖および子孫に関するものであるか)。
[in] cacheRequest
キャッシュ要求へのポインター。キャッシュが必要ない場合は NULL 。
[in] handler
アクティブなテキスト位置変更イベントを処理する オブジェクトへのポインター。
戻り値
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
注釈
イベント ハンドラーを実装する前に、「スレッドの問題について」で説明されているスレッドの問題 について理解しておく必要があります。
アクティブなテキスト位置は、ブックマーク (またはリソース内の場所を参照するフラグメント識別子) を使用して、読み取り専用テキスト要素 (Web ブラウザー、ポータブル ドキュメント形式 (PDF) ドキュメント、 またはPUBEPUB ドキュメントなど) 内または間のナビゲーション イベントによって示されます。 以下に例を示します。
- 同じ Web ページ内のブックマークに移動する
- 別の Web ページでブックマークに移動する
- 同じ PDF 内の別の場所へのリンクをアクティブ化する
- 同じEPUB内の別の場所へのリンクをアクティブ化する
たとえば、同じページ アンカー (<a href=”#C4”>Jump to Chapter 4</a> ... <h1><a name="C4">Chapter 4</a></h1>
) が呼び出されると、ビジュアルの場所は更新されますが、UI オートメーションクライアントは元の場所に残ります。 これにより、テキストの読み取りや、新しい場所ではなく、元の場所から始まる次の項目コマンドの移動などのアクションが行われます。
同様に、新しいページ URI (フラグメント識別子: (<a href=”www.blah.com#C4”>Jump to Chapter 4</a>
)) をアクティブ化すると、新しいページが読み込まれて、指定したブックマークにジャンプしますが、UI オートメーションクライアントはページの上部に残ります。
Edit コントロールや Rich Edit コントロールなどの編集可能なテキスト要素の場合は、SelectionChanged イベントをリッスンできます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 Version 1809 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server バージョン 1709 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | uiautomationclient.h (UIAutomation.h を含む) |