Kleft
Описание
Клики мышкой в указанные координаты. Работают там, где не работают обычные команды типа left, но захватывают мышь.
Важной особенностью данных кликов является то, что они работают только в активном не перекрытом окне - точно так же, как обычная мышь. Так же при кликах данным способом в отличии от left будет перемещаться указатель мыши и мешать одновременной работе пользователя.
Синтаксис
Привязка к окну: опционально.
Работа со свернутым окном: Нет.
kleft <х> <у> [+х +у [-х -у]] [abs|handle] [nooffset]- клик левой кнопкой kright <х> <у> [+х +у [-х -у]] [abs|handle] [nooffset]- клик правой кнопкой kmiddle <х> <у> [+х +у [-х -у]] [abs|handle] [nooffset]- клик средней кнопкой double_kleft <х> <у> [+х +у [-х -у]] [abs|handle] [nooffset]- двойной клик левой кнопкой double_kright <х> <у> [+х +у [-х -у]] [abs|handle] [nooffset]- двойной клик правой кнопкой double_kmiddle <х> <у> [+х +у [-х -у]] [abs|handle] [nooffset]- двойной клик средней кнопкой
<x> - x координата клика.
<y> - y координата клика.
+х +у - случайное смещение в '+' в указанном пределе.
-х -у - случайное смещение в '-' в указанном пределе.
[abs] - признак клика по абсолютным координатам экрана, а не относительным окна.
[handle] - хендл окна для клика.
[nooffset] - игнорировать смещение указанное в переменных clickoffsetx и clickoffsety.
Можно установить паузу между нажатием и отпусканием кнопки мыши с помощью 'MouseClickDelay'.
set MouseClickDelay 30 //установить паузу в 30 мсек. // или так set MouseClickDelay 30 + random(30) // установить паузу в 30-59 мсек.
Иногда требуется сделать клик со смещением:
set Clickoffsetx 50 //смещение вправо на 50 пикселей set Clickoffsety 30 //смещение вниз на 30 пикселей set Clickoffsetx -40 //смещение влево на 40 пикселей set Clickoffsety -60 //смещение вверх на 60 пикселей
Чтобы игнорировать смещение заданное clickoffsetx и clickoffsety:
kleft 100 100 nooffset
Примеры
// Пример 1 kleft 100 200 // клик левой кнопкой в координаты 100 200 End_script
// Пример 2 kright 100 200 // клик правой кнопкой в координаты 100 200 End_script
// Пример 3 set #x 200 set #y 250 kleft #x #y // клик в координаты 200 250 End_script
// Пример 4 kleft 150 200 abs // клик в абсолютные координаты 150 200 End_script
// Пример 5 kleft 200 300 5 10 7 12 // клик в координаты: X = от 205 до 193 и Y от 310 до 288 // 5 и 10 означают что клик может быть в + от указанных координат // 7 и 12 означают что клик может быть в - от указанных координат End_script
// Пример 6 kleft 200 500 100 50 // клик в координаты: X = от 200 до 300 и Y от 500 до 550 End_script
// Пример 7 set clickoffsetx 5 // смещение для координаты X set clickoffsety 5 // смещение для координаты Y kleft 0 0 // клик в координаты 5, 5 End_script
// Пример 8 double_kleft 110 300 // двойной клик левой кнопкой в координаты 110 300 End_script
// Пример 9 double_kright 110 300 // двойной клик правой кнопкой в координаты 110 300 End_script
// Пример 10 set clickoffsetx 30 // смещение для координаты X set clickoffsety 20 // смещение для координаты Y kleft 0 0 // клик в координаты 30, 20 kleft 10 10 nooffset // клик в координаты 10 10 End_script
Смотрите также
Left
Move
Kleft down
Left down
Drag
Get mouse pos
История развития
2.11
Добавил команды альтернативных кликов мышью kleft, kright, double_kleft, double_kright, kleft_down, kleft_up, kright_down, kright_up. работают там, где не работают обычные команды, но захватывают мышь. Синтаксис тот-же.
Добавил возможность указания задержки между нажатием и отпусканием кнопки мыши в мышиных командах.
2.15
Добавил команды pleft, pright, double_pleft, double_pright, pleft_down, pleft_up, pright_down, pright_up. Аналогично команде post.
2.18
Исправил kleft по относительным координатам.
2.19
Исправил 'kleft' по абсолютным координатам.
Добавил клики с модификаторами 'left x y [abs] [~^rlm]'. ~ - с шифтом, ^ - c контролом, r - одновременно с правой, l - с левой, m - со средней. если указано несколько модификаторов, то должны быть написаны слитно друг с другом. работает для всех кроме тех, что с приставкой 'k'. с альтом просто так не работает, придется его сначала зажимать sendex'ом.
2.30
Подправил клики по отрицательным координатам в команде 'kleft'.
2.36
Добавил настройку, переключающую работу команд типа 'kleft' в вариант версии 2.17.
Добавил переменные смещения кликов мышью и команды 'move': clickoffsetx', 'clickoffsety'
set clickoffsetx 5 set clickoffsety 5 left 0 0 //кликнет в координаты 5, 5
Добавил в клики мышью возможность задания случайного смещения координат в указанных пределах:
left <х> <у> [+х +у [-х -у]] [abs|handle] [~^rlm] move <х> <у> [+х +у [-х -у]] [abs|handle]
2.36.1
Добавил во все команды перемещения курсора и кликов мышью, возможность указать хендл подопытного окна вместо 'abs'. Слегка изменился синтаксис:
left <x> <y> [abs | handle]
2.36.2
Добавил переменную 'MouseClickDelay' - устанавливает задержку между нажатием и отпускание кнопки. Значения изменяются только для текущего скрипта.
2.41
Исправил клики мышкой с модификаторами.
В клики мышкой добавил параметр "nooffset", который позволяет игнорировать смещение, указанное в переменных clickoffsetx и clickoffsety.
kleft 100 100 nooffset