Приветствую.
Умельцы подскажите.
Описание: Есть собранный exe, после его запуска появляются настройки, которые указывает пользователь и дальше бот делает свои дела.
Вопрос:
Как добавить кнопку "Пауза" с выводом на экран - чтобы пользователь мог переместить ее в удобную для него зону на экране. После ее нажатия бот становится на паузу (пользователь в игре делает свои правки), вместо кнопки "Пауза" появляется кнопка "Продолжить". При нажатии на нее бот с уже установленными ранее настройками продолжает свои "делишки". В идеале продолжал с места остановки.
1. Almighty - 18 Февраля, 2019 - 05:37:19 - перейти к сообщению
2. Dantes3000 - 18 Февраля, 2019 - 10:40:59 - перейти к сообщению
Ну совсем недавно же точно такая тема была:
В случае "(пользователь в игре делает свои правки)" нужно после нажатия кнопки "продолжить" заново считать данные из контролов,галок и тд
В случае "(пользователь в игре делает свои правки)" нужно после нажатия кнопки "продолжить" заново считать данные из контролов,галок и тд
3. Almighty - 18 Февраля, 2019 - 12:15:28 - перейти к сообщению
Dantes3000 пишет:
Ну совсем недавно же точно такая тема была:
В случае "(пользователь в игре делает свои правки)" нужно после нажатия кнопки "продолжить" заново считать данные из контролов,галок и тд
В случае "(пользователь в игре делает свои правки)" нужно после нажатия кнопки "продолжить" заново считать данные из контролов,галок и тд
Понял, искал не нашел, извиняюсь. Спасибо за ответ.
4. Zireael - 18 Февраля, 2019 - 18:47:15 - перейти к сообщению
Цитата:
Как добавить кнопку "Пауза" с выводом на экран - чтобы пользователь мог переместить ее в удобную для него зону на экране.
Кнопка (Отобразить)
Клик левой кнопкой мыши переименует кнопку в 'Продолжить' и приостановит скрипт.
Повторный клик левой кнопкой мыши переименует кнопку в 'Пауза' и запустит скрипт.
Зажав правую кнопку мыши можно переместить кнопку.
5. 007wan - 10 Марта, 2019 - 10:25:12 - перейти к сообщению
А че, если просто таймер создать и выключать его?
6. CKA3KA - 22 Марта, 2019 - 00:56:19 - перейти к сообщению
Zireael пишет:
Цитата:
Как добавить кнопку "Пауза" с выводом на экран - чтобы пользователь мог переместить ее в удобную для него зону на экране.
Кнопка (Отобразить)
Клик левой кнопкой мыши переименует кнопку в 'Продолжить' и приостановит скрипт.
Повторный клик левой кнопкой мыши переименует кнопку в 'Пауза' и запустит скрипт.
Зажав правую кнопку мыши можно переместить кнопку.
Попроповал - а оно процессор за 50% грузит,
чета не то,
у меня мой бот в худшем случае до 3% а в среднем 2%
7. Zireael - 22 Марта, 2019 - 02:51:59 - перейти к сообщению
Цитата:
Попроповал - а оно процессор за 50% грузит
Добавить sleep() в цикл в таймере.
Цитата:
CREATE_TIMER(0, 50)
{
while(flag || getkeystate(2)) // пока flag не равно 0 или нажата правая кнопка
{
getmouse(mouse_x, mouse_y); // получить координаты курсора
if(WindowFromPoint(mouse_x, mouse_y)==b0) // получить хендл окна под курсором, если он равен с хендлу кнопки
{
if(GetWindowRect(b0, address(#rect[0]))) // получить позицию кнопки
{
delta_x=mouse_x-rect[0]; delta_y=mouse_y-rect[1]; // разница координат курсора и координат кнопки
while(getkeystate(2)) // пока нажата правая кнопка мыши
{
getmouse(mouse_x, mouse_y); // получить координаты курсора
SetWindowPos(gethwnd(2), 0, mouse_x-delta_x, mouse_y-delta_y, -1, -1, 1); // переместить кнопку
sleep(10);
}
}
}
else
{
if(flag==0)break; // если хендл под курсором не равен хендлу кнопку и flag равно 0
}
sleep(1); // добавить
}
}
{
while(flag || getkeystate(2)) // пока flag не равно 0 или нажата правая кнопка
{
getmouse(mouse_x, mouse_y); // получить координаты курсора
if(WindowFromPoint(mouse_x, mouse_y)==b0) // получить хендл окна под курсором, если он равен с хендлу кнопки
{
if(GetWindowRect(b0, address(#rect[0]))) // получить позицию кнопки
{
delta_x=mouse_x-rect[0]; delta_y=mouse_y-rect[1]; // разница координат курсора и координат кнопки
while(getkeystate(2)) // пока нажата правая кнопка мыши
{
getmouse(mouse_x, mouse_y); // получить координаты курсора
SetWindowPos(gethwnd(2), 0, mouse_x-delta_x, mouse_y-delta_y, -1, -1, 1); // переместить кнопку
sleep(10);
}
}
}
else
{
if(flag==0)break; // если хендл под курсором не равен хендлу кнопку и flag равно 0
}
sleep(1); // добавить
}
}