1

Тема: AHK: Повторение действия при нажатии клавиши

Подскажите пожалуйста ,как сделать,чтобы при однократном нажатии на W , сразу происходило 5-7 кликов.

2

Re: AHK: Повторение действия при нажатии клавиши

Кликов чего? Повторное нажатие W? Или кликов мышки? Приблизительно это так:

~W::    ;При нажатии W будет еще нажато 7 раз.
Loop, 7     ;Цикл повтора 7 раз. 
        {
        Send, {W}    ;Нажатие W
        }
Return

Если нужно что бы при нажатии на W нажимало 7 раз мышкой, то вместо

Send, {W}    ;Нажатие W

Пиши

Click (by itself)

3

Re: AHK: Повторение действия при нажатии клавиши

Не получаеться что-то( не могли бы  вы  ехе   сделать и залить куда нибудь?  Спасибо!

4

Re: AHK: Повторение действия при нажатии клавиши

Опиши подробнее какой вариант тебе нужен!

5

Re: AHK: Повторение действия при нажатии клавиши

Нужно для игры сыну,чтобы не долбить W , а при нажатии 1 раз W, раз 5-7 нажималось! Чтобы прыгать легче было.

6

Re: AHK: Повторение действия при нажатии клавиши

Возможно не получалось из-за отсутствия задержки, он тупо сразу долбил "W" 7 раз. Поставил задержку в 100мс между нажатиями, получилось следующее:

~W::    ;При нажатии W будет еще нажато 7 раз.
Loop, 7     ;Цикл повтора 7 раз. 
        {
        Send, {w}    ;Нажатие W
        Sleep, 100
        }
Return

Вот уже готовый ехе

7 (изменено: ViTaL, 2011-05-21 10:01:25)

Re: AHK: Повторение действия при нажатии клавиши

Cпасибо что помогаете,но не скрипт ,не готовое ехе не запускается, пишет такое сообщение(Note:The hotkey-W::will not be active because it does not exist in the current
keyboard layout)  ,как это можно исправить?

8

Re: AHK: Повторение действия при нажатии клавиши

Омг. Впервые вижу такую ошибку. У себя попробовал, все работает замечательно. Возможно из-за того, что это Ноутбук и на нем Вин7 не хочет работать. Попробовать запустить от прав администратора. Или попробовать побаловаться с языками(хотя если бы не та раскладка была, просто не работало, а не ошибку выдавало).
Сейчас вот еще раз перепроверил у себя, все работает замечательно.

9

Re: AHK: Повторение действия при нажатии клавиши

да ноут бук и виндос 7,но дело в том ,что мне сделал человек аналогичное ехе ,только не на W, а на пробел,и оно работает замечательно, а сейчас  его нет в сети ,и не знаю что делать, может быть драйвер какой нибудь нужен?

10

Re: AHK: Повторение действия при нажатии клавиши

$vk57::Send, {vk57 7}

11

Re: AHK: Повторение действия при нажатии клавиши

Ошибка всё равно,,,,вот видео сделал,посмотрите пожалуйста и помогите если можете  http://www.youtube.com/watch?v=eR-I0igrDLo

12

Re: AHK: Повторение действия при нажатии клавиши

Grey пишет:
$vk57::Send, {vk57 7}

Отлично всё,а  как кнопку shift сделать,на включение,отключение   скрипта?

13

Re: AHK: Повторение действия при нажатии клавиши

Suspend
ToolTip, ENTER, 640, 512
Sleep, 250
Tooltip
Return
 
$vk57::Send, {vk57 7} ; w/ц
 
~Shift::
Suspend
   If (A_IsSuspended)
      {
         ToolTip, OFF, 640, 512
         Sleep, 250
         Tooltip
         SoundBeep, 2500, 250
         Sleep, 50
         SoundBeep, 2500, 250
         KeyWait, Shift
      }
   Else
      {
         ToolTip, ON, 640, 512
         Sleep, 250
         Tooltip
         SoundBeep, 2500, 250
         KeyWait, Shift
      }
   Return
 
F12:: ; клавиша завершения работы скрипта
   Suspend, Off
   ToolTip, EXIT, 640, 512
   Sleep, 250
   Tooltip
   ExitApp

14 (изменено: ViTaL, 2011-05-21 17:25:16)

Re: AHK: Повторение действия при нажатии клавиши

Спасибо огромное,всё работает! Еще 1 вопрос можно? А какой код кнопки(стрелка вверх)? Спасибо

15

Re: AHK: Повторение действия при нажатии клавиши

Альтернативный в плане отображения информации вариант:

Gui, -Caption +AlwaysOnTop +Lastfound
Gui, Color, 009966
WinSet TransColor, 009966
Gui, font,w800 cGreen s12,
Gui, Add, Text,, СКРИПТ ЗАПУЩЕН
Gui, Show, Center
Sleep, 500
Gui, Destroy
Return
 
$vk57::Send, {vk57 7} ; w/ц
 
~Shift::
Suspend
   If (A_IsSuspended)
      {
         Gui, -Caption +AlwaysOnTop +Lastfound
         Gui, Color, FF3333
         WinSet TransColor, FF3333
         Gui, font,w800 cRed s12,
         Gui, Add, Text,, СКРИПТ НА ПАУЗЕ
         Gui, Show, Center
         Sleep, 500
         Gui, Destroy
         SoundBeep, 2500, 250
         Sleep, 50
         SoundBeep, 2500, 250
         KeyWait, Shift
      }
   Else
      {
         Gui, -Caption +AlwaysOnTop +Lastfound
         Gui, Color, 0099FF
         WinSet TransColor, 0099FF
         Gui, font,w800 cBlue s12,
         Gui, Add, Text,, СКРИПТ ВКЛЮЧЕН
         Gui, Show, Center
         Sleep, 500
         Gui, Destroy
         SoundBeep, 2500, 250
         KeyWait, Shift
      }
   Return
 
F12::
   Suspend, Off
   Gui, -Caption +AlwaysOnTop +Lastfound
   Gui, Color, 009966
   WinSet TransColor, 009966
   Gui, font,w800 cGreen s12,
   Gui, Add, Text,, ЗАВЕРШЕНИЕ РАБОТЫ СКРИПТА
   Gui, Show, Center
   Sleep, 500
   Gui, Destroy
   ExitApp

Идея взята вот от сюда.

16

Re: AHK: Повторение действия при нажатии клавиши

А какой код кнопки(стрелка вверх)?

17

Re: AHK: Повторение действия при нажатии клавиши

По поводу определения виртуальных кодов клавиш можно посмотреть в этой теме.

18

Re: AHK: Повторение действия при нажатии клавиши

Cпасибо,но вот только что-то не получается,делаю вроде всё правильно vk57 заменяю на vk26 , но не работает.Что я делаю не так? С другими кнопками работает

19

Re: AHK: Повторение действия при нажатии клавиши

Разобрался во всем,но есть небольшая проблема:
Сделал количество кликов 1 ,но всё равно при нажатии и удержании клавиши , игрок улетает в небеса))

Как можно сделать,чтобы при удержании клавиши ,выполнялось примерно 5-7 кликов в секунду? то есть эмитировалось простое быстрое нажатие клавиши . Спасибо!

20

Re: AHK: Повторение действия при нажатии клавиши

На сколько я понимаю значение времени/количество нажатий для Вас очень актуально. Тогда делим 1 секунду (1000мс) на количество нажатий, чтобы получить время задержки:
если 5 нажатий, то пауза 200мс
если 6 нажатий, то пауза 165мс (округлено)
если 7 нажатий, то пауза 145мс (округлено).

$vk57:: ; префикс $ для того, чтобы клавиша могла запустить сама себя 
   Random, random_value, 5, 7
   If random_value = 5
      sleep_value := 200
   If random_value = 6
      sleep_value := 165
   If random_value = 7
      sleep_value := 145
   Loop, % random_value
      {
         SendInput, {vk57}
         Sleep, % sleep_value
      }
   KeyWait, vk57
   Return

Этим скриптом делал отладку:

vk57::
   Random, random_value, 5, 7
   If random_value = 5
      sleep_value := 200
   If random_value = 6
      sleep_value := 165
   If random_value = 7
      sleep_value := 145
   Loop, % random_value
      {
         ToolTip, отладка: колличество повторений %random_value% задержка %sleep_value%
         Sleep, % sleep_value
         ToolTip
      }
   KeyWait, vk57
   Return

21

Re: AHK: Повторение действия при нажатии клавиши

Работает спасибо,но немного медленно. Хотелось бы сделать побыстрее, это возможно?

22

Re: AHK: Повторение действия при нажатии клавиши

ViTaL пишет:

Хотелось бы сделать побыстрее, это возможно?

Делим не 1000мс а 500мс (пол секунды):

если 5 нажатий, то пауза 100мс
если 6 нажатий, то пауза 85мс (округлено)
если 7 нажатий, то пауза 70мс (округлено)

Полученые результаты заменяем в скрипте.

23 (изменено: ViTaL, 2011-05-26 20:55:37)

Re: AHK: Повторение действия при нажатии клавиши

Всё понял ,но я имел ввиду не это) Я хочу . что бы просто держать кнопку W( не нажимать часто) . а компьютер это рассматривал бы как частое нажатие на W c паузой примерно 50 мил.сек. ,между кликами!    первый ваш скрипт работает (я вместо 7 сделал 1) но игрок улетает в небеса ,а мне нужно,что бы была пауза,просто эмитировалось частое нажатие(как вручную) Спасибо!

24

Re: AHK: Повторение действия при нажатии клавиши

ViTaL пишет:

Я хочу, что бы просто держать кнопку W (не нажимать часто), а компьютер это рассматривал бы как частое нажатие...

Думаю вот тут можно найти для себя полезную информацию, как это можно осуществить.

25 (изменено: ViTaL, 2011-05-28 13:07:42)

Re: AHK: Повторение действия при нажатии клавиши

разобрался, спасибо большое! Сделал так,правильно?
Скажите ещё, как бип сделать менее звонким,а то на уши давит этот0))

Suspend
ToolTip, ENTER, 640, 512
Sleep, 250
Tooltip
Return
 
$vk57::    ;
         {
        Send, {vk57}    ;
        Sleep, 50
        }
Return
 
~Shift::
Suspend
   If (A_IsSuspended)
      {
         ToolTip, OFF, 640, 512
         Sleep, 250
         Tooltip
         SoundBeep, 2500, 250
         Sleep, 50
         SoundBeep, 2500, 250
         KeyWait, Shift
      }
   Else
      {
         ToolTip, ON, 640, 512
         Sleep, 250
         Tooltip
         SoundBeep, 2500, 250
         KeyWait, Shift
      }
   Return
 
F12:: ; 
   Suspend, Off
   ToolTip, EXIT, 640, 512
   Sleep, 250
   Tooltip
   ExitApp

26

Re: AHK: Повторение действия при нажатии клавиши

ViTaL пишет:

...правильно?

Правильно, только без блоков, они тут не нужны.

$vk57::
   Send, {vk57}
   Sleep, 50
   Return
ViTaL пишет:

...как бип сделать менее звонким

Его можно совсем убрать из кода, или почитать про него тут.

27 (изменено: ViTaL, 2011-06-27 16:16:32)

Re: AHK: Повторение действия при нажатии клавиши

Grey ,скажи что я тут намудрил? надо чтобы при нажатии W запускалась 3 раза W,и при нажатии стрелки вверх запускалось 3 раза W

Suspend
ToolTip, ENTER, 640, 512
Sleep, 250
Tooltip
Return
 
vk26::
   Send, {vk57 3}
   Sleep, 58
   Return
vk57::
   Send, {vk57 3}
   Sleep, 58
   Return

Shift::
Suspend
   If (A_IsSuspended)
      {
         ToolTip, OFF, 640, 512
         Sleep, 250
         Tooltip
         SoundBeep, 2000, 250
         Sleep, 50
         SoundBeep, 2000, 250
         KeyWait, Shift
      }
   Else
      {
         ToolTip, ON, 640, 512
         Sleep, 250
         Tooltip
         SoundBeep, 2000, 250
         KeyWait, Shift
      }
   Return
 
F12:: ; клавиша завершения работы скрипта
   Suspend, Off
   ToolTip, EXIT, 640, 512
   Sleep, 250
   Tooltip
   ExitApp

28

Re: AHK: Повторение действия при нажатии клавиши

ViTaL пишет:

...что я тут намудрил?

Не поставил префикс $ перед хоткеем vk57::.

29 (изменено: ViTaL, 2011-06-27 16:47:47)

Re: AHK: Повторение действия при нажатии клавиши

Всё ,спасибо тебе большое, я туплю просто)):rolleyes:

30

Re: AHK: Повторение действия при нажатии клавиши

DaVinchi пишет:

Кликов чего? Повторное нажатие W? Или кликов мышки? Приблизительно это так:

~W::    ;При нажатии W будет еще нажато 7 раз.
Loop, 7     ;Цикл повтора 7 раз. 
        {
        Send, {W}    ;Нажатие W
        }
Return

Если нужно что бы при нажатии на W нажимало 7 раз мышкой, то вместо

Send, {W}    ;Нажатие W

Пиши

Click (by itself)

Спасибо тебе огромное мил человек,я 6 часов мучался.хотел это простое действие написать в разных программах.только ты мне помог.спасибо ещё раз:)

31 (изменено: Skanavy, 2024-01-09 16:37:00)

Re: AHK: Повторение действия при нажатии клавиши

DaVinchi пишет:

Возможно не получалось из-за:

Доброго времени суток! При попытке скомпилировать данный скрипт, выдает ошибку. Может такое быть, что код морально устарел? Прошло много лет (здесь должен быть смайлик).

+ открыть спойлер

https://i.ibb.co/ZdGhdvG/2024-01-09-00-02-03.png

32

Re: AHK: Повторение действия при нажатии клавиши

Skanavy, добро пожаловать на форум! Ознакомьтесь, пожалуйста, с Правилами, отредактируйте свой пост. Обратите внимание на точки в конце предложений.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

33 (изменено: Skanavy, 2024-01-09 16:35:53)

Re: AHK: Повторение действия при нажатии клавиши

teadrinker пишет:

Skanavy, добро пожаловать

Перечитал правила, что не так не увидел. На всякий случай убрал картинку в споллер. Добавил точку в конце скрипта - не помогло. В остальных местах везде есть. Полагаю, что просто новая программа, работает по другому и скрипт не актуален.

34

Re: AHK: Повторение действия при нажатии клавиши

Skanavy пишет:

Прошло много лет)

Теперь увидели? Почему-то пошла мода завершать текст без точки, даже если в середине точки были. Не знаете, с чем это связано?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

35 (изменено: Skanavy, 2024-01-09 17:18:38)

Re: AHK: Повторение действия при нажатии клавиши

teadrinker пишет:

Теперь увидели?

Лично меня улыбнуло, что мне удалось найти тему такой давности. Я считаю смайлик уместным, но для вас его уберу. Что до программы, я искал версию того времени и не нашел. Может есть способ включить совместимость?

36

Re: AHK: Повторение действия при нажатии клавиши

Если действительно правила прочитали, то странно, что не заметили слова про смайлики и правила цитирования.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

37 (изменено: Skanavy, 2024-01-09 17:16:55)

Re: AHK: Повторение действия при нажатии клавиши

teadrinker пишет:

Если действительно правила прочитали

С третьего раза увидел, посыпаю голову пеплом.
Нагуглил, что в скрипте надо убрать все запятые, тогда должно заработать. Проверю вечером.

38

Re: AHK: Повторение действия при нажатии клавиши

Проблема современной молодёжи в том, что они не могут держать в голове две вещи одновременно. На что-то одно обратил внимание — всё, что было раньше, моментально вылетело.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

39 (изменено: Skanavy, 2024-01-09 16:35:28)

Re: AHK: Повторение действия при нажатии клавиши

teadrinker пишет:

Проблема современной молодёжи

Я уже далеко не молод, и за трендами новых правил не успеваю следить. Как говорится со своим уставом в чужой монастырь не ходят, поэтому я все исправил.

40

Re: AHK: Повторение действия при нажатии клавиши

Skanavy пишет:

Я уже далеко не молод

Сожалею, это тоже может быть негативным фактором. Правила цитирования вам освоить так и не удалось.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

41 (изменено: Skanavy, 2024-01-09 17:17:41)

Re: AHK: Повторение действия при нажатии клавиши

teadrinker пишет:

Сожалею,

О боги...

42

Re: AHK: Повторение действия при нажатии клавиши

Вы ещё и верующий? Это частично объясняет ситуацию. Но постарайтесь всё же взять себя в руки, перечитать правила, и исправить свои посты. Мое терпение же не бесконечно.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

43 (изменено: Skanavy, 2024-01-09 16:44:40)

Re: AHK: Повторение действия при нажатии клавиши

Исправил цитирование. Убрал запятые из кода, все равно не работает. Попросил нейронку написать скрипт под v2, а он все равно не работает. Видимо не успевает за обновлениями. Судя по гуглу, AHK не узнает синтаксис, что именно не узнает не понятно. Есть идеи?

~w::
    ; При нажатии W будет симулировано двойное нажатие с задержкой 500 мс.
    Click 2, 500
    Return

Ошибка:

+ открыть спойлер

https://i.ibb.co/HqygcCy/2024-01-09-13-38-21.png

44

Re: AHK: Повторение действия при нажатии клавиши

Skanavy пишет:

Исправил цитирование

Я не вижу, что исправили. Исправьте во всех постах.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

45

Re: AHK: Повторение действия при нажатии клавиши

teadrinker пишет:

Я не вижу, что исправили. Исправьте во всех постах.

Поправил.

46

Re: AHK: Повторение действия при нажатии клавиши

Теперь непонятно, для какой всё-таки версии AHK нужен скрипт.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder