Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » сближение на эмуляторах

Страниц (1): [1]
 

1. sparrtak - 30 Ноября, 2021 - 07:50:29 - перейти к сообщению
Доброго времени суток уважаемые, хотел спросить возможно простой вопрос, но никак не могу придумать и/или найти решение,в эмуляторах андроид к примеру, нужно приблизить что-то или отдалить, то-есть одновременно зажать две точки левой кнопкой миши и двигать в противоположную стороны, или к центру, кто-то возможно скажет что там есть возможность сделать через кнопки внутри эмулятора(к примеру NOX)но и там нужно одновременно зажать Ctrl+прокрутить среднюю кнопку на несколько позиций, а прокрутка как в учебнике у меня вообще почему-то не работает, возможно кто-то уже встречал такую проблему и как то решил, или есть идеи?
2. Ilya001 - 30 Ноября, 2021 - 08:10:45 - перейти к сообщению
Вручную активируйте окно эмулятора после запуска кода.
Попробуйте этот код(без привязки к окну, и без CTRL):
CODE:
pause(3000); //пауза можно убрать
beep(700, 200); //звук можно убрать
mousedown(LEFT, 512, 512); //зажимаем левую кнопку мыши. Координаты укажите сами, где кликать
mouse(WHEEL, 2); //прокручиваем на 2 щелчка вверх. Если указать -2 то вниз
pause(1000); //пауза
mouseup(LEFT, 512, 512); //отпускаем левую кнопку мыши


А этот код с использованием клавиши CTRL(тоже без привязки к окну):
CODE:
pause(3000);
beep(700, 200);

keydown(17); //зажимаем клавишу CTRL
mouse(WHEEL, 2); //прокручиваем
keyup(17); //отпускаем CTRL
pause(1000);
3. sparrtak - 30 Ноября, 2021 - 08:59:44 - перейти к сообщению
 Ilya001 пишет:
Вручную активируйте окно эмулятора после запуска кода.
Попробуйте этот код(без привязки к окну, и без CTRL):
CODE:
pause(3000); //пауза можно убрать
beep(700, 200); //звук можно убрать
mousedown(LEFT, 512, 512); //зажимаем левую кнопку мыши. Координаты укажите сами, где кликать
mouse(WHEEL, 2); //прокручиваем на 2 щелчка вверх. Если указать -2 то вниз
pause(1000); //пауза
mouseup(LEFT, 512, 512); //отпускаем левую кнопку мыши


А этот код с использованием клавиши CTRL(тоже без привязки к окну):
CODE:
pause(3000);
beep(700, 200);

keydown(17); //зажимаем клавишу CTRL
mouse(WHEEL, 2); //прокручиваем
keyup(17); //отпускаем CTRL
pause(1000);


странно но работает,не постоянно но да,а есть способ полной автоматизации без ручной активации окна?
В любом случае уже спасибо,хоть что-то.
(Добавление)
Тоесть у меня есть окно и именно в нем нужно работать.Обычно я делал указатель на контрол,возможно где то в учебнике есть про это,я что-то пропустил?
4. Ilya001 - 30 Ноября, 2021 - 09:37:18 - перейти к сообщению
 Цитата:
pause(4000);
int x, y;
getmouse(x, y);
win w=getwindow(0, x, y);
activate(w);
pause(1000);
keydown(17, 0, 0, w); //зажимаем клавишу CTRL
mouse(WHEEL, 2, 0, w); //прокручиваем
keyup(17, 0, 0, w); //отпускаем CTRL
pause(1000);

Запустите код, наведите курсор мыши на нужное окно, после чего кибор получить название окно по этим координатам(int x, y), и активирует окно. Все эти действии вы должны успеть сделать за 4сек, но вы можете поставить любую паузу.
5. Zireael - 30 Ноября, 2021 - 16:59:30 - перейти к сообщению
 Цитата:
одновременно зажать две точки левой кнопкой миши

А вы сами так можете сделать? В системе один курсор.
6. sparrtak - 01 Декабря, 2021 - 05:48:52 - перейти к сообщению
 Zireael пишет:
 Цитата:
одновременно зажать две точки левой кнопкой миши

А вы сами так можете сделать? В системе один курсор.

конечно могу,к примеру на ноутбуке есть тачпад и сделать это елементарно
7. Zireael - 01 Декабря, 2021 - 05:59:37 - перейти к сообщению
Тачпад тут причём? Перечитайте свой же вопрос:
 Цитата:
одновременно зажать две точки левой кнопкой миши
8. sparrtak - 01 Декабря, 2021 - 06:03:46 - перейти к сообщению
 Zireael пишет:
Тачпад тут причём? Перечитайте свой же вопрос:
 Цитата:
одновременно зажать две точки левой кнопкой миши

ну так в тачпаде и есть кнопки,ну возможно я не так сформулировал вопрос,как мне приблизить или отдалить как на тачпаде ноутбука?
(Добавление)
 Ilya001 пишет:
 Цитата:
pause(4000);
int x, y;
getmouse(x, y);
win w=getwindow(0, x, y);
activate(w);
pause(1000);
keydown(17, 0, 0, w); //зажимаем клавишу CTRL
mouse(WHEEL, 2, 0, w); //прокручиваем
keyup(17, 0, 0, w); //отпускаем CTRL
pause(1000);

Запустите код, наведите курсор мыши на нужное окно, после чего кибор получить название окно по этим координатам(int x, y), и активирует окно. Все эти действии вы должны успеть сделать за 4сек, но вы можете поставить любую паузу.

к сожелению не работает,совсем,или я что то не так делаю,запустил как вы указали не работает,немного переработал:
win w = window (-1, -1, -1, -1, 540, 960, -1);
if (w==0){messagebox ("No window"Подмигивание; }//goto er;}
pause(2000);
activate(w);
pause(1000);
keydown(17, 0, 0, w);
mouse(WHEEL, 2, 0, w);
keyup(17, 0, 0, w);
pause(1000);
но так же не работает
9. sparrtak - 01 Декабря, 2021 - 15:33:42 - перейти к сообщению
Есть еще идеи?возможно как то зажать и левую и правую клавишу мишки и одновременно потащить в разные стороны?

Powered by ExBB FM 1.0 Final