Asoftech > Asoftech Automation
Windowsマクロのクリック前に画面の色を確認する方法
Asoftech |
記録したクリックは、画面の準備ができていなくても指示どおりに実行されます。デスクトップアプリに安定した状態表示があれば、画面の色を確認して次の動作を選ぶ手がかりにできます。Asoftech Automationはピクセルと参照色を比較し、一致・不一致に応じて異なる動作を実行できます。この記事では、条件を実際の手順に組み込む前のテスト方法を紹介します。

判断に使える状態表示を選ぶ
たとえば、サンプル処理の準備が整うと単色のランプが緑色になるテスト用アプリを想定します。次のクリックの前に、ランプ内部の点を調べます。これは手順の例であり、そのアプリとの組み込み連携ではありません。文字の縁、動くアイコン、変化する画像を避け、広く均一な色の領域を選びます。ピクセルの一致は視覚的な手がかりにすぎず、ファイルの保存や処理の正常終了を証明するものではありません。
Advanced Inputで色チェックを設定する
- テストデータを用意し、短い手順を記録します。マクロを編集画面で開き、Advanced Inputを展開します。状態表示に依存するクリックの直前に色チェックを配置してください。アプリを表示したままにし、対象の画面が隠れないようにします。
- マウスの下のピクセルか、指定した位置を調べるか選びます。固定のランプには、単色部分の内側の点を指定します。テスト中はウィンドウ配置を保ち、その点がランプから外れないようにします。
- 参照色を選びます。操作ガイドにある色選択ツールは画面から色を取得でき、位置のオプションで取得地点の座標も入力できます。RGBの完全一致にはEqual、相違にはNot Equal、近い色には近似比較を選びます。近似比較は意図しない色も受け入れる可能性があるため、両方の状態で確認してください。 緑色のランプの例では、取得した緑色を参照色にしてEqualを使います。
- 条件を挿入すると、If、Else、EndIfの行が追加されます。テスト用クリックをIfとElseの間に置き、色が一致したときだけ実行されるようにします。この例ではElseの分岐を空にします。EndIfの後に同じクリックが残っていると結果に関係なく実行されるため、重複がないことを確認してください。詳細はAsoftech Automationの操作ガイドにあります。
繰り返す前に両方の結果をテストする
ランプを想定した状態にして一度実行し、必要な動作だけが起きることを確認します。次に、同じテスト手順で不一致の状態にし、対象のクリックが起きないことを確認します。マウスを離して再テストし、ホバー表示が取得色を変えていないかも調べます。読み込みに時間がかかる場合は、チェックの前に適切なWait動作を入れます。1回の色比較は、自動的に準備完了まで待つ処理ではありません。繰り返し確認するには、明示的に手順を設計し、テストする必要があります。
色チェックの結果が正しくない場合
取得した点、参照色、比較モードを見直します。ウィンドウの移動、ズームやテーマの変更、ツールチップやダイアログの表示で、同じ位置に別のピクセルが現れることがあります。実際に使う配置で色を取得し直してください。状態表示が安定していれば完全一致を優先し、近似比較は必要な状態を区別できると確認してから使います。信頼できる表示がなければ、無関係な色を確認の根拠にせず、人が判断する手順にします。
条件と実際の結果を別々に確認する
試すたびに、対象アプリで実際の結果を確認してください。緑色のピクセルでは文書内容の検証や、すべてのアプリエラーの検出はできません。両方の経路が想定どおりに動くまで手順を短く保ち、テスト済みのマクロをバックアップしてから繰り返しやスケジュールを追加します。Asoftech Automationの記録・編集機能を活用し、確認できる条件を中心に手順を組み立てましょう。
関連する自動化ガイド
English | العربية | 繁體中文 | 简体中文 | Русский | 日本語 | Italiano | Français | Español | Deutsch | 한국어 | Português