Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: zopapa on December 19, 2013, 09:37:07 AM
-
В общем дело такое. Есть виртуальный рабочий стол. На который нет возможности что либо установить. В этом раб. ст. при загрузке сразу открывается программа и в ней человеки работают. Там есть иерархическое меню с чекбоксами которые не выделяются все автоматически а выделяется только 1 элемент на котором стоит фокус если кликнуть на него либо пробелом.
Так вот проблема: Этих элементов там около 1000 и руками выделять все уходит много времени. Работает такой код :
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "some2.bmp")
// //print("Íàéäåí â êîîðäèíàòàõ X=", $_return1, ", Y=", $_return2)
LCLICK($_return1+10, $_return2+5)
WAITMS(500)
//move($_return1-20, $_return2-20)
$schet = 1
$schet2 = $schet2 +1
Else
KEYDOWN(39)
KEYUP(39)
KEYDOWN(40)
KEYUP(40)
$schet = $schet + 1
$schet2 = 1
END_IF
IF($schet = 25)
HALt
END_IF
IF($schet2 > 7)
KEYDOWN(39)
KEYUP(39)
KEYDOWN(40)
KEYUP(40)
END_IF
Работает то работает но очень уж долго. KEYDOWN(32) keypress(#space) и другие не дают эффекта по этому делал с поиском картинки пустого чекбокса и кликом мышки по нему.
Так вот собственно и сам вопрос keypress(#space) при #ps2_keyboard работает и выделяет чекбоксы но перестают работать KEYDOWN(39) KEYUP(39)KEYDOWN(40) KEYUP(40) ну и keypress(#left) нажимает не клавишу вправо а пишет цифру 6 и #down цифру 2.
Можно ли отключить в теле кода #ps2_keyboard или помогите как решить вопрос другим способом
P. S. ps/2 клавиатуры или мышки у меня нет. Запуск идет с ноутбука lenovo z560.
-
А TABом между ними не переключает?
Нельзя уменьшить задержку в первом варианте? Пол секунды многовато. И область ограничить, неужели они по всему экрану.
-
Табом бегает по элементам формы, за 400 млс 1 из 10 чекбоксов не успевает кликнуть. Про область попробую но я думаю особого прироста это не даст.
-
что за анальное рабство. очередная "зарабатывалка" чтоль?
без обновления никак, пометил себе неработающие стрелки в режиме пс/2
но чтоб ты не унывал могу дать тебе совет.
замени IF_PICTURE_IN на SCANPICTURE, в данном случае (когда нужно найти больше одной картинки на экране) это существенно ускорит процесс. инфа и примеры есть в теме про массивы.
-
Попробуй вот такой скрипт:
GETSCREEN
SCANPICTURE($ARR_SCAN, 0,0, $_xmax,$_ymax, "some2.bmp", -1, 100)
$ARR_NUM = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
$X = $ARR_SCAN [$ARR_NUM]
INC($ARR_NUM,1)
$Y = $ARR_SCAN [$ARR_NUM]
INC($ARR_NUM,1)
LCLICK($X+10, $Y+5)
WAITMS(50)
END_CYC
UNDEFINE($ARR_SCAN)
HALT
А зачем
KEYDOWN(39)
KEYUP(39)
KEYDOWN(40)
KEYUP(40)
-
Меню иерархическое. Чтобы открылось подменю с элементами надо нажать вправо, затем вниз и пробел или клик мышкой для выделения самого чекбокса. чтото типа
(https://lh5.googleusercontent.com/-R3QYRTN0ikc/TYnUtHPvluI/AAAAAAAAABg/0iSSCtvFBNo/s1600/1.JPG)
-
с нампадом кстати пробовал? там тоже стрелки есть.
еще вариант если твой стол под виндой, запустит на нем виртуальную клаву из стандартных винды
-
с нампадом кстати пробовал? там тоже стрелки есть.
еще вариант если твой стол под виндой, запустит на нем виртуальную клаву из стандартных винды
Балин все работает в режиме ps/2 при отключении нумлока на вирт столе. Мог бы и сам догадаться когда он мне печатал цифры вместо нажатия на стрелки.
Спасибо всем за помощь!
-
Ну ок. Не забудь о нашем маленьком проекте, когда заработаешь первый миллион.