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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Zakkazak



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
aidomars
1) в скрипте по моему не хватает нажатие Enter на пункте меню, после того как я сам нажимаю, скрипт продолжает и копирует.
 
2) можно ли без вывода сообщения в конце ?

Всего записей: 995 | Зарегистр. 12-01-2005 | Отправлено: 22:03 01-09-2011
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну я думал сам доделаешь, держи.

Код:
MouseClick, R
Send {Up}{Enter} ; {SC024} это код клавиши "о" т.е. СвОйства
WinWaitActive, Свойства
loop 3
    Click 190,230
Send ^{SC02e}
WinClose, Свойства
;MsgBox %Clipboard%
Return

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 22:47 01-09-2011
OnMyDSeeAtAll



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

Цитата:
и пусть никто не говорит, что AutoHotkey не способен
А, что кто-то так говорит?

Код:
WinMenuSelectItem, ahk_class HH Parent,, 4&, 7&
Sleep, 25
ControlSend,, +{Tab},
ahk_class #32770
Sleep, 50
ControlSend,
Edit2, ^{vk43}, ahk_class #32770
Sleep, 25
ControlSend,, {Esc 2},
ahk_class #32770
MsgBox, 262144, % " ", % Clipboard ;, % 0.5

Добавлено:
Можно ещё так:
Код:
PostMessage, 0x111, 0x177E,,, ahk_class HH Parent
Sleep, 50
PostMessage, 0xB1, 0, -1,
Edit2, ahk_class #32770
Sleep, 25
PostMessage, 0x301,,,
Edit2, ahk_class #32770
Sleep, 25
PostMessage, 0x10,,,,
ahk_class #32770
MsgBox, 262144, % " ", % Clipboard ;, % 0.5

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



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста, как сделать переключатель, чтобы в один клик менять действие щелчка мыши по файлам и папкам?
А именно переключаться между режимами:
левый клик=выделение
левый клик=открытие папки/файла

Всего записей: 435 | Зарегистр. 28-10-2009 | Отправлено: 22:44 11-09-2011
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
imu7ic
Думаю через реестр изменением параметра, вот только ключ узнать бы.

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 09:23 12-09-2011
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Левый короткий клик - обычное действие по умолчанию (выделение и т.д.), левый клик при не большом удержании (выставлено 200мс) - открытие папки/файла если под курсором таковые имеются, либо обычное действие от нажатия и удержания.
Код:
~LButton::
   
StartTime:=A_TickCount
   
While, GetKeyState("LButton", "P")
   
{
     
If A_TickCount-StartTime>200
     
{
         
SetTimer,
ActionByHold, -0
         
Exit
     
}
   }
   
KeyWait, LButton
   
Return
 
ActionByHold:
   
ClipContent:=ClipboardAll
   
Send, ^{Ins}
   
If FileExist(Clipboard)
   
{
     
Click, 2
     
KeyWait, LButton
   
}
   
Clipboard:=
ClipContent
   
Return

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



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
что нужно добавить в ahk, чтобы при переключении на русский язык вводились русские буквы, а не английские?

Всего записей: 2707 | Зарегистр. 27-06-2001 | Отправлено: 17:44 30-09-2011
OnMyDSeeAtAll



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

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 12:21 02-10-2011
Bozo



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

Цитата:
Вопрос не понятен, поясните

Поясняю, имеется ahk скрипт www.alphagrips.com/YAARG.AHK при нажатии клавиши переключения раскладки винда в области уведомлений в языковой панели отображает, что язык ввода переключился на русский, но при нажатии на клавиши по прежнему вводятся латинские буквы. Как исправить?

Всего записей: 2707 | Зарегистр. 27-06-2001 | Отправлено: 14:28 02-10-2011
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Могу предложить как вариант, в котором клавиша энтер на цифровой клавиатуре будет приостанавливать действие скрипта и включать русскую раскладку клавиатуры, при повторном нажатии на ту же клавишу, будет возобновлена работа скрипта, и раскладка возвращена в английскую, так как скрипт писался под именно эту раскладку.
Код:
sc11C:: ; enter (digital keyboard)
   
Suspend
   
If (A_IsSuspended)
   
{
     
PostMessage, 0x50,, 0x4190419,,
A
     
SoundBeep, 2500, 100 ; звуковой сигнал для мониторинга состояния
     
Sleep
, 50
     
SoundBeep, 2500, 100
; при желании можно убрать
   
}
   
Else
   
{
     
PostMessage, 0x50,, 0x4090409,,
A
     
SoundBeep, 2500, 100
   
}
   
KeyWait,
% A_ThisHotkey
   
Return

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 19:01 02-10-2011 | Исправлено: OnMyDSeeAtAll, 09:12 04-12-2012
Bozo



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OnMyDSeeAtAll
почему-то тупо жалуется на Missing }.  

Ну это ладно. А вот как сделать переключение в русскую раскладку и при этом в ней тоже поменять местами клавиши. потому что стандартная раскладка тоже никуда не годится

Всего записей: 2707 | Зарегистр. 27-06-2001 | Отправлено: 00:21 03-10-2011
OnMyDSeeAtAll



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

Цитата:
почему-то тупо жалуется на Missing }
1) Перед Suspend (строка №569) пишется сам хоткей sc11C::, 2) перед Else (строка№576) стоит фигурная скоба (}), всё это есть в моём коде, это просто результат небрежного копи-паста. Для остальной задачи, требуется заменить все хоткеи на виртуальные коды.
 
 
Добавлено:

Цитата:
требуется заменить все хоткеи
Все, в смысле все буквенные, которые есть в русской раскладке, остальные названия клавиш интернациональны.

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 01:37 03-10-2011
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нашел на 270той строке NumpadEnter, тогда sc11C:: не подойдёт, можно заменить на
Код:
PrintScreen & Pause::
   
Suspend
   
PostMessage, 0x50, 2,,,
A
   
KeyWait, % SubStr(A_ThisHotkey, 15)
   
Return

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



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

Цитата:
 это просто результат небрежного копи-паста

Ну, копи-пастить я умею без ошибок, дело точно не в этом
Если вставлять фрагмент в начало скрипта, то в ошибке выводится
Line#
001 Return (а должно быть sc11C:: ; enter (digital keyboard) )
002 Suspend
003 If (A_IsSusoended)
blablabla
007 Sleep,50
008 SoundBeep 2500, 100
скобку здесь AHK.exe не видит
009 Else
 
 

Цитата:
Все, в смысле все буквенные, которые есть в русской раскладке,
Типа  
б:: ш;
ы:: з;
?
 
Добавлено:
Пока проснулся, писал ответ, не заметил что уже новый пост появился

Цитата:
тогда sc11C:: не подойдёт, можно заменить на  
PrintScreen & Pause::  

Заменил Pause на Esc, заработало, переключается на русский. Кнопка Pause не подходит, она в этом пепелаце хардварная, служит для отключения устройства

Всего записей: 2707 | Зарегистр. 27-06-2001 | Отправлено: 12:22 03-10-2011
OnMyDSeeAtAll



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

Цитата:
Типа  
 б:: ш;  
 ы:: з;
Нет, не q/й и w/ц, а vk51:: и vk57::, и т.д. Pause не годится?, тогда надо искать другой вариант.

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 12:57 03-10-2011 | Исправлено: OnMyDSeeAtAll, 13:41 03-10-2011
Bozo



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

Цитата:
а vk51:: и vk57::,


Цитата:
sc11C::

А в чем разница? sc это я так понимаю scancode. А есть прога чтобы показывала сканкоды нажимаемых кнопочек? сори за нубские вопросы. А 'vk57', 'vk51' по какому принципу писать?

Всего записей: 2707 | Зарегистр. 27-06-2001 | Отправлено: 14:08 03-10-2011
aidomars



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

Цитата:
А есть прога чтобы показывала сканкоды нажимаемых кнопочек?

Есть, ищите на http://forum.script-coding.com/

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 15:23 03-10-2011
OnMyDSeeAtAll



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

Цитата:
А в чем разница?
vkxx это виртуальный, scxxx это машинный коды клавиш.

Цитата:
А есть прога чтобы показывала сканкоды нажимаемых кнопочек?
Есть.
Цитата:
А 'vk57', 'vk51' по какому принципу писать?
vk51:: - это q/й, sc10::, тоже. Если пользоваться тем скриптом-определителем, то затруднений не должно возникнуть.

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 16:25 03-10-2011
FSWE

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как вывести в MsgBox сообщение на русском, пожалуйста? А то квадраты.
 
Добавлено:
OnMyDSeeAtAll

Цитата:
vkxx это виртуальный, scxxx это машинный коды клавиш.  

Прочел, но не понял разницы.

Всего записей: 186 | Зарегистр. 04-07-2009 | Отправлено: 00:24 04-10-2011
creature_ws



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

Цитата:
Как вывести в MsgBox сообщение на русском, пожалуйста? А то квадраты.  

Следует сохранять скрипты в правильной кодировке.

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 00:40 04-10-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 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