在我的RCP应用程序中,有时一些shell在某些条件下打开,我想处理它们。 例如:如果文件已经存在于文件夹中,则覆盖shell将打开。如果它打开,我想处理覆盖shell。
我已经尝试过如果shell的条件处于活动状态,请参阅代码。但是如果条件在swtbot中不起作用。它试图点击Overwrite shell上的Ok按钮,即使覆盖shell没有打开。
参见代码:
if (swtBot.shell("Overwrite").isActive) {
swtBot.Button("Ok").click(); //This code is every time executing even if Overwrite shell is not opened.
} else {
//doing some other operation
}
答案 0 :(得分:0)
try {
swtBot.Button("Ok").click(); // it will click the button if the appropriate shell is active
} catch(WidgetNotFoundException e) {
//doing some other operation
}