1

NTTデータWinActor技術支援チーム 投稿2021年4月16日     
こんにちは、NTTデータWinActor技術支援チームのQです。  
利用者の皆様にはWinActorをもっと便利にして頂ければ幸いと考えています。
WinActorをもっと使いこなして、楽しちゃいましょう!
今回は、2回に渡ってブラウザ上のカレンダーダイアログの日付をクリックする方法の一例をご紹介します。

座標を算出した後のシナリオ作成方法はこちら■今回は図の入力フォームから起動したカレンダーを使用します。
 カレンダーの日付をクリックすると入力フォームに日付が入る仕様です。
 ※サンプル:Yahoo!Japan乗り換え情報。URL:https://transit.yahoo.co.jp/

■WinActorでカレンダーをクリックする為には、まずカレンダーの日付の列間と行間の座標の差を割り出します。
  座標の差分が、日付が横方向、縦方向にひとマス移動したときのマウスカーソルの移動距離となり、
  このひとマス分の移動距離が縦方向、横方向に何回必要かによってマウスカーソルの位置を確定します。■日付の座標取得方法(WinActorでマウス位置の座標を取得します)
1.ノード「グループ」を設定します。
2.ノード「画像マッチング」をグループの中に設定します。
3.「マウス位置取得」を2.のノードの下に設定します。
4.ノード「待機ボックス」を3.のライブラリの下に設定します。

■画像マッチングのプロパティ設定
5.対象のカレンダーダイアログの画像を取得します。
6.カレンダーダイアログの起点となる日付マスを一つ選びマッチング画像として赤枠で囲みます。(画像では4月4日)
7.マウス操作位置(青十字)を手順6.の赤枠の中心に設定します。
8.アクションの欄をプルダウンで「マウス移動のみ」に設定します。

■マウス位置取得の設定
9.x座標の欄に変数名を設定します。(図では「xの値」)
10.y座標の欄に変数名を設定します。(図では「yの値」)

11.カレンダーダイアログを表示している状態で実行ボタンをクリックします。
12.待機ボックスで停止している状態で変数一覧の「xの値」と「yの値」の現在値を確認します。
13.先頭の日付の座標をそれぞれメモしておきます。(メモが出来たら待機を解除)

■画像マッチングの設定(手順の2.で設定した「画像マッチング」のプロパティ画面を開きます)
15.手順5.で取得した画像を使い、起点の日付マス(4月4日)の右隣の日付マスをマッチング画像として赤枠で囲みます。(図では4月5日)
16.マウス操作位置(青十字)を15.の赤枠の中心に設定します。

■マウス位置取得の設定
17.カレンダーダイアログを表示している状態で実行ボタンをクリックします。
18.待機ボックスで停止している状態で変数一覧を確認します。
19.「xの値」をメモしておきます。

■画像マッチングの設定(手順の2.で設定した「画像マッチング」のプロパティ画面を開きます)
20.手順5.で取得した画像を使い、起点の日付マス(4月4日)の一つ下の日付マスをマッチング画像として赤枠で囲みます。(図では4月11日)
21.マウス操作位置を20.の赤枠の中心に設定します。

■マウス位置取得の設定
22.カレンダーダイアログを表示している状態で実行ボタンをクリックします。
23.待機ボックスで停止している状態で変数一覧を確認します。
24.「yの値」をメモしておきます

■座標の差を算出
25.起点の日付マス(4月4日)と右隣の日付マス(4月5日)の「xの値」の差を計算します(図では46)
26.起点の日付マス(4月4日)とその下の日付マス(4月11日)の「yの値」の差を計算します(図では35)

以上でカレンダーダイアログの日付をクリックする方法の準備は完了です。 
カレンダーダイアログの位置が変わると座標が変わってしまうので全て終わるまではダイアログの位置が動かないように気をつけましょう。

 本投稿のキャプチャー等取得環境  
  OS:Windows10   
 WinActor Ver:7.2.0

※「いいね」はユーザーフォーラムに会員登録済みの方がログインしているときに押下できます。
 ユーザーフォーラムの会員登録はメールアドレスがあればどなたでも無料で登録できます。
会員登録すると、質問への回答が見られたり、共有シナリオや事例集のダウンロードといった特典がございます!

技術支援チームQ 質問の編集
回答とコメントは、会員登録(無料)で閲覧できるようになります。