【发布时间】:2015-05-28 23:07:58
【问题描述】:
我正在使用的代码如下。第一行点击“打印按钮”,打开“打印”对话框。一旦打开,我希望控制台输出“发送 Esc 键 - 开始”,然后是机器人、动作、警报关闭、窗口切换到发生(基于未注释的任何代码)。但是,除非我在打印对话框中单击取消,否则控制台不会打印任何内容。因此,一旦我单击取消,系统输出将打印消息,执行操作(并且没有任何有用的事情发生由于这些操作),然后打印另一个控制台消息。
我的问题分为两部分。一种。为什么编译器(或程序)不移动到下一行?湾。我该如何处理这个打印对话框? (阅读互联网上的所有文章,尝试了建议的方法,但没有任何效果)。
driver.findElement(By.id("PrintButton")).click();
System.out.println("Sending Esc key - Start");
/*Robot r = new Robot();
r.delay(10000);
r.keyPress(KeyEvent.VK_ESCAPE);
r.keyPress(KeyEvent.VK_ESCAPE);
r.keyPress(KeyEvent.VK_ESCAPE);
*/
/*Actions a = new Actions(driver).sendKeys(Keys.CANCEL);*/
/*driver.switchTo().alert().dismiss();*/
/*List<String> handles = new ArrayList<>(driver.getWindowHandles());
driver.switchTo().window(handles.get(handles.size()-1));*/
System.out.println("Sending Esc key - done");
【问题讨论】:
-
我和你几乎有同样的问题。如果您正在使用 chromedriver 并且可以使用它运行所有案例。你会检查这个答案:stackoverflow.com/a/41670021/1184571