[英]How to use Java code and Sikuli to click menu items
我有一個需要注銷的應用程序,唯一的方法是單擊下拉菜單中的注銷選項,但是我遇到了很多問題。
我已經使用Sikuli IDE捕獲了屏幕截圖,並且當我從IDE運行代碼時,它可以很好地運行。 (代碼單擊“菜單”,然后注銷)
但是,當我嘗試從Java運行代碼時,它似乎選擇了Menu,然后當它嘗試單擊Log out時,菜單消失了。
我的猜測是,由於某種原因,Java會將焦點放在鼠標上,然后再移至“注銷”按鈕;當焦點移到鼠標上時,菜單就會消失,就像單擊其他位置時一樣。
我還嘗試過幾次使Sikuli按下向下按鈕以注銷,但是嘗試時會發生相同的事情:菜單消失了。
這是我的Java代碼。 Sikuli代碼具有相同的兩個單擊命令:
@Override
public void logout()
{
click("loggedInIndicator.png");
click("logoutButton.png");
}
請幫忙! 我找不到其他注銷方法。
我建議您打印Sikuli發現最適合這些元素的圖像。 我的猜測是它選擇了與您要單擊的元素無關的屏幕部分,從而使菜單消失了。
Match element = region.find("loggedInIndicator.png")
Screen screen = element.getScreen()
String imagePath = screen.capture(element)
這會將Sikuli找到的元素圖像保存在System temp目錄中。 由於它是一個臨時文件,因此您肯定必須將新創建的圖像文件移動到另一個目錄,以便不會立即將其刪除。 我發現這在Windows上發生過幾次
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.