Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AutoHotkey

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Открыть новую тему     Написать ответ в эту тему

chum2000

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

   
 
Актуальная версия: AutoHotkey 2.0.5 от 12 августа 2023
Версия для Windows XP | Changes from v1.1 to v2.0
 
Официальный сайт | Англоязычный форум | Архивный форум | Русскоязычный форум
Документация (англ.) | Документация и статьи (рус.) | История изменений
 
Подборка полезных скриптов | AutoHotkey + Total Commander
 

Цитата:
AutoHotkey — бесплатная программа с открытым исходным кодом для создания макросов и автоматизации, позволяющая упростить выполнение повторяющихся задач.
 
AutoHotkey позволяет изменить интерфейс практически любой программы. Имеет собственный скриптовый язык, специально нацеленный на лёгкое назначение и переназначение горячих клавиш.
 
AutoHotkey можно использовать для запуска программ, отправки текста, имитации мыши. Скриптовый язык позволяет управлять окнами, файлами и папками. Команды могут быть активированы горячими клавишами.
 
Также имеются возможности создания GUI, работы с реестром, использования собственного API окон для вызова DLL-файлов. Скрипты можно скомпилировать в EXE-файл и запускать на любом компьютере с Windows соответствующей версии.
 
Наиболее частое применение AutoHotkey:
- переназначение клавиш (глобально или у отдельных программ)
- управление мышью с помощью клавиатуры или джойстика
- слежение за системой, автоматическое выполнение некоторых действий по желанию пользователя, таких как напоминание, сканирование или резервное копирование
 

Всего записей: 505 | Зарегистр. 04-03-2004 | Отправлено: 00:28 02-06-2005 | Исправлено: Egor2020, 10:08 21-09-2023
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Правильно, такую подачу просто необходимо прятать под [ more ]

Код:
!vk41::
!vk44::Send % "{Numpad4 Down}{Numpad5 Down}{Numpad6 Down}{Numpad2 Down}{"
            . SubStr(A_ThisHotkey, 2) . "}"
            . "{Numpad4 Up}{Numpad5 Up}{Numpad6 Up}{Numpad2 Up}"
 
 
При нажатии Alt + A отправиться комбинация с «А»
Аналогично с Alt + D.

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 19:46 13-04-2012 | Исправлено: creature_ws, 19:50 13-04-2012
screenshot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
creature_ws
 
Большое спасибо за содействие, но есть один момент:
Для того чтобы получить персонажа - надо нажать num4,5,6,2,a и держать 7 секунд.
 
При однократном нажатии макрос выдает
4562a
 
При удержании
 
4562aaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Соответственно персонажа я так и не получил )

Всего записей: 7 | Зарегистр. 13-04-2012 | Отправлено: 21:41 13-04-2012
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может еще какие «незначительные уточнения» будут?

Код:
#MenuMaskKey vk7
$!vk41::
$!vk44::
    SendInput % "{Numpad4 Down}{Numpad5 Down}{Numpad6 Down}{Numpad2 Down}{" SubStr(A_ThisHotkey, 3) " Down}"
    KeyWait % SubStr(A_ThisHotkey, 3)
    SendInput % "{Numpad4 Up}{Numpad5 Up}{Numpad6 Up}{Numpad2 Up}{" SubStr(A_ThisHotkey, 3) " Up}"
    return
 

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 21:52 13-04-2012
screenshot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а этот не работает
 
Error at line 1
 
Line Text: #MenuMaskKey vk7
Error: This line does not constaint a recognized action.

Всего записей: 7 | Зарегистр. 13-04-2012 | Отправлено: 21:58 13-04-2012
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А нужно использовать актуальные версии AHK.

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 22:00 13-04-2012
screenshot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
creature_ws
 
Огромное спасибо за помощь, давай номер мобилы )
 
ну или если живешь в Ростове-на-Дону, говори куда пиво подвезти )
 
http://s019.radikal.ru/i632/1204/3b/3ced829449fb.jpg
 
Я 10й в мире на ПК версии WoooHooo ) (первые 4 читаки, так что 6й)

Всего записей: 7 | Зарегистр. 13-04-2012 | Отправлено: 22:08 13-04-2012 | Исправлено: screenshot, 22:42 13-04-2012
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В Австралию вези, нынешнему разработчику AHK.  
Не стоит благодарностей.
Поздравляю с 6-м местом.

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 22:41 13-04-2012 | Исправлено: creature_ws, 22:45 13-04-2012
screenshot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо друг! Это поможет мне и еще одному пареньку пробиться выше! В топ 10 целых 2 РОССИЯНИНА из хреналиона людей по всему миру!
 
ой, от радости забыл спросить ). Я могу запитать num1 + num 4 на клавишу num 0 в этом же макросе? Они же друг другу мешать не будут?

Всего записей: 7 | Зарегистр. 13-04-2012 | Отправлено: 23:00 13-04-2012 | Исправлено: screenshot, 23:03 13-04-2012
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
sc52::SendInput, {sc4F}{sc4B}


Код:
sc52:: ; num0
   
SendInput, {sc4F Down}{sc4B Down} ; num1, num4
   
KeyWait, % A_ThisHotkey
   
SendInput, {sc4F Up}{sc4B Up}
   
Return

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 04:03 15-04-2012 | Исправлено: OnMyDSeeAtAll, 08:32 04-12-2012
screenshot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А этот почему-то не работает (  
В блокноте не выдает никаких символов а просто смещает курсор на 1 назад. Но все равно спасибо, я вообще сам собирался его делать, сейчас вот в литературе копаюсь

Всего записей: 7 | Зарегистр. 13-04-2012 | Отправлено: 05:34 15-04-2012
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Тогда так, с учётом состояния клавиши NumLock:

Код:
sc52::SendInput, % "{"((Bool:=GetKeyState("NumLock", "T"))
                           
? "Numpad1":"NumpadEnd")"}"
               
. "{"(
Bool ? "Numpad4":"NumpadLeft")"}"


Код:
sc52::
   
Bool:=GetKeyState("NumLock", "T")
   
SendInput,
% "{"(Bool ? "Numpad1":"NumpadEnd")" Down}"
             
. "{"(
Bool ? "Numpad4":"NumpadLeft")" Down}"
   
KeyWait,
sc52
   
SendInput, % "{"(Bool ? "Numpad1":"NumpadEnd")" Up}"
             
. "{"(
Bool ? "Numpad4":"NumpadLeft")" Up}"
   
Return

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 17:19 15-04-2012 | Исправлено: OnMyDSeeAtAll, 08:41 04-12-2012
screenshot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Оуу еее!!! Спасибо дружище!

Всего записей: 7 | Зарегистр. 13-04-2012 | Отправлено: 23:14 15-04-2012
imu7ic



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Что если я вместо  
<!vk53:: send 8        ; Alt+ s -> 8
напишу  
<!s:: send 8        ; Alt+ s -> 8
 
Вроде работает, но может так не делать лучше?  
Где брать коды нужных мне кнопок тогда?

Всего записей: 435 | Зарегистр. 28-10-2009 | Отправлено: 01:22 24-04-2012
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Лучше так не делать, если программой будет пользоваться еще кто то. Будь у него раскладка по умолчанию другая, получит ошибку (работать будет, если поменять !s на !ы).
Гугли Коды символов ASCII.

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 06:21 24-04-2012
imu7ic



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
aidomars
понятно. Про коды нашёл, но что-то не получается заставить работать знаки минуса, плюса, точки для отделения десятичной части.
 
Скрипт для переноса цифрового блока правлю под себя. Что не так

Код:
#NoTrayIcon
#NoEnv         ; стартовая мантра
SetKeyDelay 0  ; Данная команда задает более быструю эмуляцию нажатий клавиш, чем определено по умолчанию.
Process Priority,,High
SendMode Input
#UseHook, On   ; Предосторожность на случай, если клавиша должна будет
               ; посылать саму себя. Делает то же, что префикс $, только
               ; для всех гор. клавиш, которые ниже.
Critical
 
; При нажатой клавише Alt кнопки 123qweasdzxc, а также ~4rfv, Esc и CapsLock,
; работают как "перевернутый" NumPad "для левой руки" ("телефонная" раскладка рулит!).
 
; Мне по работе часто бывает нужно ввести 2-3-несколько цифр, притом,
; что правая рука занята мышкой (я правша). Отрывать руку, включать NumLock,
; набирать цифры, ВЫКЛЮЧАТЬ NumLock (у меня он постоянно выключен, я привык
; к навигации на NumPad'е в стиле IBM-XT). Клавиатуры "для левшей" и отдельные
; NumPad'ы неудобны, поскольку являются просто "перенесенными" частями клавиатуры
; справа налево, БЕЗ АДАПТАЦИИ (!) под левую руку. Так был задуман этот скрипт.
 
; Безусловно, написание скрипта было бы невозможно без помощи сайта (форума)
; http://forum.script-coding.com/index.php, и его активных участников!
 
; (C)2008 by Steve Key (Steve KEY Laboratory) e-mail: Steve_KEY@mail.ru
 
 
<!vk4A:: send 1        ; Alt+ j -> 1
<!vk4B:: send 2        ; Alt+ k -> 2
<!vk4C:: send 3        ; Alt+ l -> 3
<!vk55:: send 4        ; Alt+ u -> 4
<!vk49:: send 5        ; Alt+ i -> 5
<!vk4F:: send 6        ; Alt+ o -> 6
<!vk37:: send 7        ; Alt+ 7 -> 7
<!vk38:: send 8        ; Alt+ 8 -> 8
<!vk39:: send 9        ; Alt+ 9 -> 9
<!vk4D:: send 0        ; Alt+ M -> 0
<!vk2C:: send 000      ; Alt+ , -> три нуля для тысяч  
<!vk2E:: send {ASC 44} ; Alt+ . -> , (для отделения десятичной дроби)
 
<!vkC0:: send {ASC 37} ; Alt+ ` -> %
<!vk30:: send {ASC 47} ; Alt+ 0 -> /
<!vk50:: send {ASC 42} ; Alt+ p -> *
<!vk3B:: send {ASC 45} ; Alt+ ; -> -
<!vk2F:: send {ASC 43} ; Alt+ / -> +
 
 
<!Esc:: send {BS}      ; Alt+ Esc -> BackSpace
 
<!CapsLock:: send {Enter} ; Alt+ CapsLock -> Enter
 
#UseHook, Off

Всего записей: 435 | Зарегистр. 28-10-2009 | Отправлено: 15:46 24-04-2012 | Исправлено: imu7ic, 08:56 25-04-2012
imu7ic



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Строчки  
 
 

Код:
<!vk2C:: send 000      ; Alt+ , -> три нуля для тысяч
<!vk2E:: send {ASC 44} ; Alt+ . -> , (для отделения десятичной дроби)  
 
<!vk3B:: send {ASC 45} ; Alt+ ; -> -
<!vk2F:: send {ASC 43} ; Alt+ / -> +

Не работают. Не тот код вставил?

Всего записей: 435 | Зарегистр. 28-10-2009 | Отправлено: 08:52 25-04-2012 | Исправлено: imu7ic, 08:55 25-04-2012
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
<!vkBC:: send 000      ; Alt+ , -> три нуля для тысяч
<!vkBE:: send {ASC 44} ; Alt+ . -> , (для отделения десятичной дроби)
 
<!vkBA:: send {ASC 45} ; Alt+ ; -> -
<!vkBF:: send {ASC 43} ; Alt+ / -> +

 
vk2C например, это  

Цитата:
VK_SNAPSHOT     2C     PRINT SCREEN key for Windows 3.0 and later

В комментарии к хоткею сказано:

Цитата:
Alt+ ,

, (запятая) это vkBC

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 11:23 25-04-2012 | Исправлено: creature_ws, 11:25 25-04-2012
imu7ic



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
creature_ws а откуда мне взять значение для других клавиш? Брал с таблицы http://ascii.org.ru/im/Image21.gif похоже она не подходит (для запятой там 2С как раз)
 
Попробовал отсюда ещё - http://pascal.toom.su/866 тоже на работает.
Вот новый вариант, но он не работает (не работающее с комментом соответствующим):

Код:
<!vkBC:: send 00      ; Alt+ , -> два нуля для сотен
<!vk2E:: send {ASC 44} ; Alt+ . -> , (для отделения десятичной дроби) не работает
 
<!vkC0:: send {ASC 37} ; Alt+ ` -> % пока не надо
<!vk30:: send {ASC 47} ; Alt+ 0 -> /
<!vk50:: send {ASC 42} ; Alt+ p -> *
<!vk3B:: send {ASC 45} ; Alt+ ; -> - не работает
<!vk2F:: send {ASC 43} ; Alt+ / -> + не работает

 
Вот эти три клавиши не могу заставить работать, может значения других символов брать надо?

 
 

Всего записей: 435 | Зарегистр. 28-10-2009 | Отправлено: 14:44 25-04-2012
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Виртуальные коды клавиш по ссылке (Использовать, естественно, нужно не псевдоним клавиши, а hex код из второго столбца)

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 16:24 25-04-2012 | Исправлено: creature_ws, 16:39 25-04-2012
imu7ic



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Читаю, просто коды не оттуда беру
 
aidomars
creature_ws
спасибо за помощь.  
 

Всего записей: 435 | Зарегистр. 28-10-2009 | Отправлено: 15:24 26-04-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Компьютерный форум Ru.Board » Компьютеры » Программы » AutoHotkey


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru