Вопрос:

Как получить весь регион приложения в Сикули

python sikuli sikuli-script

371 просмотра

1 ответ

26 Репутация автора

Как вы получаете весь регион для приложения через скрипт Sikuli? Я пытаюсь получить все окно без необходимости найти конкретное изображение скриншота. У меня есть следующий код прямо сейчас:

app = App("app.exe")
app.focus()
appwindow=app.window()
popup("["+str(appwindow.getX())+","+str(appwindow.getY())+","+str(appwindow.getW())+","+str(appwindow.getH())+"]"

Выше показано «[0,0,1,1]». Это не тот регион, который мне нужен.

У рассматриваемого приложения есть несколько окон, некоторые из которых имеют координаты X и Y 0,0, а некоторые - нет. Я просто хочу всю визуальную поверхность приложения. Как мне это получить?

Автор: WayneRoseberry Источник Размещён: 08.11.2017 11:38

Ответы (1)


0 плюса

4933 Репутация автора

Как вы уже узнали сами, window()метод уже возвращает a, Regionно в вашем случае есть несколько окон, которые генерирует приложение.

Операционная среда Microsoft Windows идентифицирует каждую форму в приложении, присваивая ей дескриптор или hWnd. Свойство hWnd используется с вызовами Windows API.

Насколько я понимаю, причина, по которой вы не получаете все регионы, заключается в том, как window()метод реализован в Sikuli. Внутренне он вызывает собственный getHwnd(pid, winNum)метод, но неправильно полагает, что у процесса есть только один HWND.

Ссылка 1

Ссылка 2

Автор: Eugene S Размещён: 09.11.2017 04:10
Вопросы из категории :
32x32