Автокликер Clickermann :: Форум

Основной раздел => Использование => Topic started by: Dimka4369 on September 30, 2020, 10:08:25 PM

Title: Проверка зажатия кнопки
Post by: Dimka4369 on September 30, 2020, 10:08:25 PM
Здравствуйте! Нужна ваша помощь! Можно ли написать такой скрипт?
Если кнопка мыши была зажата более чем 3950 MS, отпустить её?
Заранее спасибо!
Title: Re: Проверка зажатия кнопки
Post by: 4.У.В.@.К on September 30, 2020, 10:43:18 PM
Привет!
Примерно так можно написать:
Code: (clickermann) [Select]
WHILE(ISKEYDOWN(#A))
   DEFINE($t, $_ms + 3950)
   IF($t < $_ms)
      KEYUP(#A)
      HALT
   END_IF
END_CYC

Если клавиша A будет зажата в течение указанного времени, то сработает KEYUP(#A), и скрипт остановится.
Только если клавиша зажата физически, например пальцем, то кликер палец вверх не подбросит)), и клавиша останется зажатой.
Title: Re: Проверка зажатия кнопки
Post by: 4.У.В.@.К on October 01, 2020, 09:54:35 AM
полнейшая чепушня в ответе написана, такое впечатление, что человек хорошо понимает, что глупости пишет, но писать такое здесь ему зачем-то нужно.

Всё у меня правильно написано. Только не хватает одной строки, без которой теряется смысл задуманного. Просто торопился вчера выключить комп на ночь и не мешать людям спать, а откладывать такой простой вопрос на завтра не хотелось. Наспех почистил тестовый скрипт от лишнего и выложил на форум. Оказалось, что удалил нужную последнюю строку. Ну а клавиша A вместо клавиши мыши, это тоже для теста (в Блокноте). Вот и всё.

Смысл моего сценария в паре директив DEFINE/UNDEFINE. Для понимающих - очевидно, что у меня он был заложен во второй строке кода. Если кому непонятно как эта пара работает, но лень читать справку, то могу рассказать.

Вернул удаленную строку и переделал клавишу A на ЛКМ.
Code: (clickermann) [Select]
WHILE(ISKEYDOWN(1))
   DEFINE($t, $_ms + 3950)
   IF($t < $_ms)
      KEYUP(1)
      HALT
   END_IF
END_CYC
UNDEFINE($t)
Title: Re: Проверка зажатия кнопки
Post by: Dimka4369 on October 01, 2020, 10:24:17 AM
Большое спасибо вам!