20. var window = WindowControl.FromZTop(app);
var target = new WindowControl(window.Dynamic()._target);
//中央を左クリック
target.Click();
//ボタンと座標指定でクリック
target.Click(MouseButtonType.Middle, new Point(4, 5));
//ダブルクリック
target.DoubleClick();
target.DoubleClick(MouseButtonType.Middle, new Point(4, 5));
//Drag & Drop.
var dropTarget = new WindowControl(window.Dynamic()._dropTest);
target.MouseDown(MouseButtonType.Left, new Point(0, 0));
dropTarget.MouseUp(MouseButtonType.Left, new Point(2, 3));
//コンテキストメニューのクリックユーティリティ
PopupUtility.ExecuteContextMenu(target, new PopupTarget(5, 4), new PopupTarget(5, 4));
//キー送信
target.SendKeys("aBc");
//キーとマウス
app.KeyDown(Keys.Menu);
target.Click();
app.KeyUp(Keys.Menu);
書き味もいい感じ!
あくまで最終手段
21. <script type="text/javascript">
function ExecuteButton() {
//ここは待ってる
var start = new Date();
while (new Date().getTime() - start.getTime() < 5000);
//ダイアログは待たない
alert("1");
}
</script>
<input id="_button" type="button" value="Wait" onclick=“executeButton()" />
ちなみにSeleniumはAPI方式なのでいい感じに同期されます
var element = driver.FindElement(By.Id("_button"));
element.Click();
操作側
html