Изменение размера окна
В этом учебнике показано, как использовать Sikuli сценарий, чтобы изменить размер окна, перетащите его в правом нижнем углу. Для того, чтобы сделать это, вы должны оценить текущее положение этой углу экрана, переместите указатель мыши на соответствующий пункт мыши, а затем выполните одно или несколько действий сопротивления.
resizeApp (приложение, Dx, Dy):
switchApp (приложение)
= найти (Pattern ( ). TargetOffset (3, 14))
drop_point = corner.getTarget (). Смещение (Dx, Dy)
DragDrop (угловой, drop_point)
resizeApp ("Сафари", 50, 50)
Этот пример определяет функцию "resizeApp", чтобы увеличить окно на Mac, а затем вызвать функцию, чтобы увеличить размер Safari от 50x50 пикселей. Есть несколько подходов к этой задаче. Самый простой из них прямо глядя в угол и перетащите его, чтобы увеличить окно.
В дополнение к этой простой подход, мы также хотим показать вам больше возможных способов сделать то же самое. В следующем примере показано, как использовать пространственные операторы расширить или ограничить поиск регионах.
Этот подход, чтобы найти этот угол, чтобы сначала определить наиболее характерные углу окна (в основном один с окном кнопок), а затем попытаться найти другие соответствующие углы, чтобы убедиться, что вы получите мыши точку вам нужно. Стратегия показано ниже. Мы хотим найти в верхнем правом углу, а затем идите направо, чтобы найти в правом верхнем углу, а затем пойти ниже, чтобы найти в правом нижнем углу.
Скрипт, который реализует этот план может быть написан следующим образом:
# setShowActions (True) # отладка
switchApp ("Сафари") # получить на переднем окне Safari активных
(clickOffsetX, clickOffsetY) = (3, 18) # оценивали с помощью предварительного просмотра в IDE
мТл = найти ( ) # Найти левом верхнем
# печать мТл; наведения (MTL) # отладки
ССО = mTL.nearby (200). Право (). Найти ( ) # Найти верхнем правом
# печать ССО; наведения (ССО) # отладки
MBR = mTR.below (). найти ( ) # Найти внизу справа, целевой углу
# печать MBR, # отладка
# перемещать мышь, чтобы точка
Hover (mBR.getCenter (). смещение (clickOffsetX, clickOffsetY))
# выход () # отладка
MouseDown (Button.LEFT) # Нажмите и удерживайте левую кнопку
# наведите курсор мыши на новое место, может быть повторен с другими значениями
MouseMove (Env.getMouseLocation (). смещения (10, 10))
MouseUp () # релизе кнопки мыши
Рабочего процесса и мыши перейти к нажатию точка может быть сжат до одной строки (без проверки на титул в данном случае).
(найти ( ). Поблизости (200). Право (). Найти ( ). Ниже (). Найти ( ). GetCenter (). Смещение (3, 18))
Общие замечания:
- По возможности найти операций ограничены регионе, которая должна содержать соответствующие матч, чтобы свести к минимуму риск, что что-то еще не найден. На вершине этой скорости его.
- этот пример может быть легко превращен в вспомогательная функция, где все изображения и переменные могут быть заданы как параметры.
- щелкните пункт был оценен в использовании IDE окне предварительного просмотра, а затем поместить в код гибкость и четкость.
- низкий уровень функции мыши используется, так что вы были бы более гибкими с непрерывными движениями.
- разработка подхода, сначала получить все работает для оценки соответствующих углу. На этом этапе, комментарии, имеющие «# Debug" все комментарии, чтобы иметь обратную связь. Особенно setShowActions () и выходе () являются очень полезными.
|