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

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

Редактировать | Цитировать | Сообщить модератору
Как правильно забиндить две кнопки на одну? Нужно повесить кнопки W и G на среднюю кнопку мыши.

Отправлено: 17:37 12-12-2015
OnMyDSeeAtAll



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

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 16:28 15-12-2015
user7c7



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, а можно сделать так, чтобы правый shift работал как enter при одиночном нажатии и как обычный shift в сочетании с другими клавишами?

Всего записей: 90 | Зарегистр. 22-08-2011 | Отправлено: 15:55 02-01-2016
helbvtynec

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
user7c7
Можно, и даже аналогично для Enter:

Код:
Enter::
    if (!enterdown)
    {
        enterdown := true
        enterdowntime := A_TickCount
        Send {shift down}
    }
return
Enter up::
    enterdown := false
    Send {shift up}
    if (A_TickCount - enterdowntime < 350 and A_PriorKey == "Enter")
        Send {Enter}
return
 
 
~RShift::
    if (!shiftdown)
    {
        shiftdown := true
        shiftdowntime := A_TickCount
    }
return
~RShift up::
    shiftdown := false
    if (A_TickCount - shiftdowntime < 350 and A_PriorKey == "RShift")
        Send {Enter}
return
 

Всего записей: 414 | Зарегистр. 19-03-2008 | Отправлено: 15:13 03-01-2016
Risovod



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте помогите составить скрипт для закрытия окна. Дело в том, что у окна нет названия и это затрудняет мне самому сделать скрипт. Окно появляется один раз - при загрузке ОС.
Информация об окне, которое при появлении нужно закрыть

Всего записей: 939 | Зарегистр. 12-11-2006 | Отправлено: 11:12 08-01-2016 | Исправлено: Risovod, 11:13 08-01-2016
OnMyDSeeAtAll



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

Цитата:
Дело в том, что у окна нет названия...
У Вас уже есть имя класса (#32770) следует добавить ещё критерий соответствия по имени процесса. На картинке Active Window Info устаревшей версии и он не показывает название процесса окна. Следует обновить дистрибутив AHK. Затем выяснив имя процесса можно уже будет пробовать закрывать нужное окно поместив ссылку на скрипт (либо сам сценарий) в папку Автозагрузки. Пример с микшером громкости.

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 03:59 11-01-2016
Dror54

Редактировать | Цитировать | Сообщить модератору
AutoHotkey 1.1.23
Ченчлог

Отправлено: 01:32 17-01-2016
vadim3sh



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

Цитата:
Как-то так, наверное.

Не могу даже сформулировать запрос в Google... а можно сделать так, чтобы какое-то действие происходило дополнительно к основному функционалу кнопки мышки?  
Ну, например, когда жмем левую кнопку, дополнительно происходило нажатие клавиши "W".
 
OnMyDSeeAtAll
Спасибки. Как всегда, шляпа долой!

Всего записей: 457 | Зарегистр. 28-01-2006 | Отправлено: 04:42 28-01-2016 | Исправлено: vadim3sh, 02:41 29-01-2016
vinitucupe



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

Всего записей: 279 | Зарегистр. 25-11-2015 | Отправлено: 07:11 28-01-2016
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
@vadim3sh Правим код делая горячую клавишу прозрачной.

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 13:42 28-01-2016
monsoon



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть скрипт, показывающий координаты каретки кликом левой кнопки мыши:

Код:
 
~LButton::
   Sleep, 100
   CoordMode, Caret
   (A_CaretX = "" && AccObjectFromPoint())
   ToolTip % "A_CaretX = " A_CaretX "`nA_CaretY = " A_CaretY
   Return
 
AccObjectFromPoint(ByRef _idChild_ = "", x = "", y = "")
{
   static VT_DISPATCH := 9, h := DllCall("LoadLibrary", Str, "oleacc", Ptr)
   
   (x = "" || y = "") ? DllCall("GetCursorPos", Int64P, pt) : pt := x & 0xFFFFFFFF | y << 32
 
   VarSetCapacity(varChild, 8 + 2*A_PtrSize, 0)
   if   DllCall("oleacc\AccessibleObjectFromPoint", Int64, pt, PtrP, pAcc, Ptr, &varChild) = 0
      Return ComObjEnwrap(VT_DISPATCH, pAcc, 1), _idChild_ := NumGet(varChild, 8, "UInt")
}
 
 
 
Но координаты определяются не всегда (например, в FireFox, если адресная строка не пустая и курсор находится не в ее конце или в Хроме, Анки и т.д.)
Возможно ли в таких случаях определять координаты левого нижнего угла контрола, в котором находится каретка или контрола, ближайшего выше по иерархии, для которого эти координаты определяются вышеприведенным скриптом?

Всего записей: 1255 | Зарегистр. 30-01-2003 | Отправлено: 10:19 29-01-2016
m00slim25



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго дня!
Вопрос такой: имеем скрипт
 
Все работает. Все прекрасно. Есть лишь одно маленькое неудобство - если зажат Shift (работает вертикальный трастер), и нажать любую из клавиш {r, w, z}, то действие Shift'а кратковременно прерывается, а после отпускания {r, w, z} - возобновляется.
Возможно ли как то избежать этой паузы в обработке Shift ?

Всего записей: 1040 | Зарегистр. 30-05-2006 | Отправлено: 17:04 06-02-2016 | Исправлено: m00slim25, 06:00 08-02-2016
helbvtynec

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
m00slim25
Использовать {blind} в команде Send, тогда никакие модификаторы не будут виртуально отжиматься.

Всего записей: 414 | Зарегистр. 19-03-2008 | Отправлено: 10:55 08-02-2016
m00slim25



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

Цитата:
Использовать {blind} в команде Send

Помогло. Премного благодарен!

Всего записей: 1040 | Зарегистр. 30-05-2006 | Отправлено: 12:42 08-02-2016
raveNest



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые знатоки AHK! Не могли бы вы помочь мне с реализацией такой задачи: необходимо чтоб после нажатия на англ.клавишу "е" происходило её залипание и шёл бесконечный повтор, т.е. как будто она зажата, до повторного нажатия на эту же кнопку. Ну и чтоб включение-выключение этой функции можно было повторять бесконечное кол-во раз. Заранее благодарен за помощь!

Всего записей: 3 | Зарегистр. 28-01-2009 | Отправлено: 00:16 18-02-2016
OnMyDSeeAtAll



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

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 03:18 18-02-2016
raveNest



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OnMyDSeeAtAll
Спасибо огромное!! Даже более чем просто подходит. Вы добавили ещё и горячие кнопки для переключения режима функционирования клавиши "е/у".. Ещё раз огромное спасибо!!

Всего записей: 3 | Зарегистр. 28-01-2009 | Отправлено: 02:41 20-02-2016
HeT BonpocoB



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
простая вещь - уже час ищу ничего не пойму...
как забиндить тильду в скрипте?????
 
ну т.е. хочу чтоб при нажатии Cntrl + ~
 
^~::
 
ничё не работает, ничё не найти...
 
p.s. раньше вроде какой-то InstallKeybdHook был, счас и он ничерта не показывает... или где вообще все списки vkXX и тому подобного?
 
 
+ ещё мелкий вопрос...
может есть какой универсальный и несложный способ реализовать в скрипте следующее: в форме, в которой находится курсор в момент срабатывания скрипта выделять всё содержимое (ну к примеру вот сейчас то, что я тут^ пишу одним нажатием выделить, вне зависимости от положения этого самого курсора)

Всего записей: 1342 | Зарегистр. 30-03-2003 | Отправлено: 12:44 15-03-2016 | Исправлено: HeT BonpocoB, 16:09 15-03-2016
keeperion

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

Всего записей: 3 | Зарегистр. 16-03-2016 | Отправлено: 17:28 16-03-2016
Krot66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HeT BonpocoB
Выделения делаются с помощью стандартных хоткеев: посылаешь сначала End, затем Shift+Home.
Клавиши именуются по своему нижнему, без шифта значению, т.е это не тильда, а акцент.
Вот примочка для определения виртуальных кодов - зажимаешь Esc и печатаешь
Скрипт
 
 
keeperion
Выложил бы ты оригинальный скрипт с комментариями - уразуметь такой текст на аутохоткейно-славянском мало кто сможет. И еще б что-нибудь отчетливое касательно задач и существа вопроса

Всего записей: 1254 | Зарегистр. 10-12-2007 | Отправлено: 22:37 16-03-2016 | Исправлено: Krot66, 22:39 16-03-2016
Открыть новую тему     Написать ответ в эту тему

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