- 概要
- UI Automation
- UI Automation を使用して自動化されるアプリケーションと技術
- プロジェクトの対応 OS
- UI-ANA-016 - [ブラウザーを開く] に使用されている URL を検出
- UI-ANA-017 - [エラー発生時に実行を継続] の値が True
- UI-ANA-018 - OCR/画像関連のアクティビティのリスト
- UI-DBP-006 - コンテナーの使用
- UI-DBP-013 - Excel の自動化方法の誤用
- UI-DBP-030 - セレクター内での変数の使用禁止
- UI-PRR-001 - クリックをシミュレート
- UI-PRR-002 - 入力をシミュレート
- UI-PRR-003 - [アプリケーションを開く] の誤用
- UI-PRR-004 - ハードコードされた待機時間
- UI-REL-001 - セレクター内の大きいインデックス値
- UI-SEC-004 - メール アドレスのデータを含むセレクター
- UI-SEC-010 - アプリ/URL の制限
- UI-USG-011 - 許可されていない属性
- UX-SEC-010 - アプリ/URL の制限
- UX-DBP-029 - セキュリティで保護されていないパスワードの使用
- UI-PST-001 - [プロジェクト設定] の監査ログ レベル
- UiPath ブラウザー移行ツール
- クリッピング領域
- Computer Vision レコーダー
- Activities index
- アクティベート
- アンカー ベース
- ブラウザーにアタッチ
- ウィンドウにアタッチ
- ユーザー入力をブロック
- 吹き出し
- チェック
- クリック
- 画像をクリック
- 画像クリック トリガー
- OCR で検出したテキストをクリック
- テキストをクリック
- クリック トリガー
- アプリケーションを閉じる
- タブを閉じる
- ウィンドウを閉じる
- コンテキスト対応のアンカー
- 選択されたテキストをコピー
- 要素属性変更トリガー
- 要素の存在を確認
- 要素スコープ
- 要素ステート変更トリガー
- UI ツリーをエクスポート
- 構造化データを抽出
- 子要素を探す
- 要素を探す
- 画像を探す
- 一致する画像を探す
- OCR でテキスト位置を探す
- 相対要素を探す
- テキスト位置を探す
- アクティブ ウィンドウを取得
- 親要素を取得
- 属性を取得
- イベント情報を取得
- クリップボードから取得
- フル テキストを取得
- OCR でテキストを取得
- パスワードを取得
- 位置を取得
- ソース要素を取得
- テキストを取得
- 表示中のテキストを取得
- 前に戻る
- 次に進む
- ホームに移動
- Google Cloud Vision OCR
- ウィンドウを隠す
- 強調表示
- ホットキー トリガー
- ホバー
- 画像上でホバー
- OCR で検出したテキスト上でホバー
- テキスト上でホバー
- 画像の存在を確認
- 画面上で指定
- .NET コードを挿入
- JS スクリプトを挿入
- ActiveX メソッドを呼び出し
- キー操作トリガー
- 画像を読み込み
- ウィンドウを最大化
- Microsoft Azure ComputerVision OCR
- Microsoft OCR
- Microsoft Project Oxford Online OCR
- ウィンドウを最小化
- イベントを監視
- マウス トリガー
- ウィンドウを移動
- URL に移動
- OCR でテキストの存在を確認
- 要素が出現したとき
- 要素が消滅したとき
- 画像が出現したとき
- 画像が消滅したとき
- アプリケーションを開く
- ブラウザーを開く
- ブラウザーを更新
- ユーザー イベントを再生
- ウィンドウを復元
- 画像を保存
- 項目を選択
- 複数の項目を選択
- ホットキーを押下
- クリッピング領域を設定
- フォーカスを設定
- テキストを設定
- クリップボードに設定
- Web 属性を設定
- ウィンドウを表示
- プロセスを開始
- システム トリガー
- スクリーンショットを作成
- Tesseract OCR
- テキストの存在を確認
- ツールチップ
- 文字を入力
- SecureString で文字を入力
- フォアグラウンドを使用
- 属性を待つ
- 要素の消滅を待つ
- 画像の消滅を待つ
- UI Automation API を使用してブラウザー検索を実行し、結果を取得する
- Web の閲覧
- 画像を検索する
- 画像をクリックする
- イベントをトリガーおよび監視する
- ファイルを作成して上書きする
- HTML ページ: 情報を抽出して操作する
- ウィンドウの操作
- リスト項目の選択の自動化
- ウィンドウ要素を探して操作する
- テキスト操作の自動化を行う
- 画像を読み込んで処理する
- マウスでアクティブ化する操作を管理する
- アプリケーションランタイムの操作を自動化する
- ローカル アプリケーションの自動実行
- ブラウザーのナビゲーション
- Web オートメーション
- トリガー スコープの例
- DevExpress での UI Automation の有効化
- Computer Vision Local Server
- モバイル オートメーション
- ターミナル
UI Automation のアクティビティ
イベントをトリガーおよび監視する
以下の例では、特定のアプリケーションを開くための各種ホットキーを使用することによってユーザー イベントを監視し、さまざまなアクションをトリガーする方法を説明しています。たとえば、ユーザーは Windows の電卓アプリを開くホットキーの組み合わせを使用できます。
これは、[ホットキー トリガー]、[イベントを監視]、[イベント情報を取得] などのアクティビティを示します。これらのアクティビティは、UiPath.UIAutomation.Activities パッケージに含まれています。
サンプルと同等のオートメーション プロセスは以下のように構築できます。
- Studio を開いて、新しいプロセスを作成します。プロセスの既定の名前は Main です。
- デザイナー パネルに [シーケンス] コンテナーをドラッグします。
-
次の変数を作成します。
変数名
変数の型
既定値
ContinueMonitor
Boolean
-
[シーケンス] コンテナー内に [メッセージをログ] アクティビティをドラッグします。
- [プロパティ] パネルで、[ログ レベル] ドロップダウン リストからログに記録するレベルを選択します。
- 式
"Start monitoring..."
を Message フィールドに追加します。
-
[メッセージをログ] アクティビティの下に [代入] アクティビティを追加します。
- [プロパティ] パネルの [保存先] フィールドに変数
ContinueMonitor
を追加します。 - [右辺値 (Value)] フィールドに条件
True
を追加します。
- [プロパティ] パネルの [保存先] フィールドに変数
-
[イベントを監視] アクティビティを [代入] アクティビティの下に配置します。
- [プロパティ] パネルで [無限に繰り返す] フィールドに値
ContinueMonitor
を追加します。
- [プロパティ] パネルで [無限に繰り返す] フィールドに値
-
[イベントを監視] アクティビティ内に [ホットキー トリガー] アクティビティをドラッグします。このアクティビティで Windows の電卓アプリを開きます。
Alt
およびShift
のチェックボックスをオンにします。- [
Key
(キー)] フィールドにc
を入力します。 - [プロパティ] パネルで [イベント モード] ドロップダウン リストから [EVENT_BLOCK] オプションを選択します。
-
別の [ホットキー トリガー] アクティビティをドラッグして、それを以前の [ホットキー トリガー] アクティビティの横に配置します。このアクティビティは、新しいブラウザー タブを開き、ユーザーが以前に選択したテキストを Google で検索します。
- [Alt] および [Shift] のチェック ボックスをオンにします。
- [キー] フィールドに
g
を入力します。 - [プロパティ] パネルで [イベント モード] ドロップダウン リストから [EVENT_BLOCK] オプションを選択します。
-
別の [ホットキー トリガー] アクティビティをドラッグして、それを以前の [ホットキー トリガー] アクティビティの横に配置します。このアクティビティは、イベントの監視を停止します。
- [Alt] および [Shift] のチェック ボックスをオンにします。
- [キー] フィールドに
s
を入力します。 - [プロパティ] パネルで [イベント モード] ドロップダウン リストから [EVENT_BLOCK] オプションを選択します。
-
新しい [シーケンス] コンテナーを追加し、[ホットキー トリガー] アクティビティの下に配置します。
- [プロパティ] パネルで、[表示名] フィールドに
Event Handler
を追加します。 -
次の変数を作成します。
変数名
変数の型
既定値
TriggerHotkey
UiPath.Core.EventInfo
ContinueMonitor
Boolean
- [プロパティ] パネルで、[表示名] フィールドに
-
[イベント ハンドラー] シーケンス内に [メッセージをログ] アクティビティをドラッグします。
- [プロパティ] パネルで [ログ レベル] ドロップダウン リストから [Info] オプションを選択します。
- 式
"Event triggered"
を Message フィールドに追加します。
-
[メッセージをログ] アクティビティの下に [イベント情報を取得] アクティビティをドラッグします。
- [プロパティ] パネルの [結果] フィールドに変数
TriggerHotkey
を追加します。 - [TypeArgument (引数の型)] ドロップダウン リストから [UiPath.Core.EventInfo] を選択します。
- [プロパティ] パネルの [結果] フィールドに変数
-
[条件分岐 (switch)] アクティビティを、[イベント情報を取得] アクティビティの下に配置します。すべてのホットキー トリガーは、このアクティビティ内で記述され、ケースとして扱われます。
- [プロパティ] パネルで [式] フィールドに値
TriggerHotkey.KeyEventInfo.KeyName.ToLower
を追加します。 - [TypeArgument (引数の型)] ドロップダウン リストから [文字列] を選択します。
- [プロパティ] パネルで [式] フィールドに値
-
[条件分岐 (switch)] アクティビティの [新しい case の追加] ボタンをクリックします。
- [Case 値] フィールドに値
c
を追加します。
- [Case 値] フィールドに値
-
[ケース c] コンテナー内部に [アプリケーションを開く] アクティビティを配置します。これは、[電卓] アプリを開く最初の [ホットキー トリガー] ケースを表します。
- [プロパティ] パネルで [引数] フィールドに式
"calc.exe"
を追加します。 - 式
"<wnd app='applicationframehost.exe' title='Calculator' />"
を Selector (セレクタ) フィールドに追加します。
- [プロパティ] パネルで [引数] フィールドに式
-
[条件分岐 (switch)] アクティビティの [新しい case の追加] ボタンをクリックします。
- [Case 値] フィールドに値
g
を追加します。
- [Case 値] フィールドに値
-
[シーケンス] コンテナーをドラッグして、[ケース g] コンテナー内部に配置します。これは、以前に選択したテキストの Google 検索を開始する 2 番目の [ホットキー トリガー] ケースを表します。
- [プロパティ] パネルで、[表示名] フィールドに
Google selected text
を追加します。 -
次の変数を作成します。
変数名
変数の型
既定値
TextToSearch
GenericValue
- [プロパティ] パネルで、[表示名] フィールドに
-
[待機] アクティビティをドラッグし、Google が選択したテキスト シーケンス内に配置します。
- [プロパティ] パネルで [期間] フィールドに値
00:00:00.5000000
を追加します。
- [プロパティ] パネルで [期間] フィールドに値
-
[待機] アクティビティの下に [選択されたテキストをコピー] アクティビティを追加します。
- [プロパティ] パネルで、[エラー発生時に実行を継続] フィールドに値
True
を追加します。 - Result (値) フィールドに変数
TextToSearch
を追加します。 - [タイムアウト (ミリ秒)] フィールドに値
2000
を追加します。
- [プロパティ] パネルで、[エラー発生時に実行を継続] フィールドに値
-
[条件分岐 (if)] アクティビティを、[選択されたテキストをコピー] アクティビティの下にドラッグします。
- [プロパティ] パネルで [条件] フィールドに式
TextToSearch IsNot Nothing
を追加します。
- [プロパティ] パネルで [条件] フィールドに式
-
[Then] ボックス内に [ブラウザーを開く] アクティビティを配置します。
- [プロパティ] パネルの [ブラウザーの種類] ドロップダウン リストから [IE] を選択します。
- 式
"www.google.com"
を Url フィールドに追加します。 - [新しいセッション] オプションのチェック ボックスを選択します。これにより、選択したブラウザーの新しいセッションが開始されます。
-
[Do] シーケンス内に [文字を入力] アクティビティを配置します。
- [プロパティ] パネルの [ターゲット] ドロップダウン リストから [ターゲット] を選択します。
- 式
"<webctrl tag='INPUT' aaname='Search' />"
を Selector (セレクタ) フィールドに追加します。 - [準備完了まで待機] ドロップダウン リストから [INTERACTIVE] を選択します。
- [テキスト] フィールドに変数
TextToSearch
を追加します。 - [アクティベート] オプションのチェック ボックスを選択します。このオプションにより、UI 要素が前面に表示され、テキストが書き込まれる前にアクティブ化されます。
- [入力をシミュレート] オプションのチェック ボックスを選択します。このオプションにより、対象アプリケーションの技術を使用してキー入力がシミュレートされます。
-
[文字を入力] アクティビティの下に [ホットキーを押下] アクティビティをドラッグします。
- [プロパティ] パネルで、[キー] フィールドに式
"enter"
を追加します。 - [ターゲット] ドロップダウン リストから [ターゲット] を選択します。
- 式
"<webctrl tag='INPUT' aaname='Search' />"
を Selector (セレクタ) フィールドに追加します。 - [準備完了まで待機] ドロップダウン リストから [INTERACTIVE] を選択します。
- [アクティベート] オプションのチェック ボックスを選択します。このオプションにより、UI 要素が前面に表示され、テキストが書き込まれる前にアクティブ化されます。
- [キー修飾子] ドロップダウン リストから[None (なし)] を選択します。
- [特殊キー] オプションのチェック ボックスをオンにします。このオプションにより、キーボード ショートカットの特殊キーを使用するかどうかを指定します。
- [プロパティ] パネルで、[キー] フィールドに式
-
[Else] コンテナー内に [メッセージ ボックス] アクティビティをドラッグします。
- [プロパティ] パネルで、[ボタン] ドロップダウン リストから [OK] ボタンを選択します。
- 式
"Text could not be copied. Please try again."
を [テキスト] フィールドに追加します。 - [最前面] オプションのチェック ボックスをオンにします。このオプションにより、メッセージ ボックスが常に前面に表示されます。
-
[条件分岐 (switch)] アクティビティの [新しい case の追加] ボタンをクリックします。
- [Case 値] フィールドに値
s
を追加します。
- [Case 値] フィールドに値
-
[ケース s] コンテナー内部に [代入] アクティビティをドラッグします。これは、イベントの監視を停止する 3 番目の [ホットキー トリガー] ケースを表します。
- [左辺値 (To)/宛先] フィールドに変数
ContinueMonitor
を追加します。 - [右辺値 (Value)] フィールドに条件
False
を追加します。
- [左辺値 (To)/宛先] フィールドに変数
-
[イベントを監視] アクティビティの下に [メッセージをログ] アクティビティを配置します。
- [プロパティ] パネルで [ログ レベル] ドロップダウン リストから [Info] オプションを選択します。
- 式
"Stop monitoring.."
を Message フィールドに追加します。 -
ワークフローは次のようになります。
- プロセスを実行します。ロボットによって [ホットキー トリガー] が有効化され、設定したキーのショートカットを使用できます。