Тема: AHK: контекстное меню для ярлыка
Можно ли так сделать: закрепить ярлык скрипта на панели задач, чтобы при клике правой кнопкой мыши вызывался список моих скриптов.
Как здесь: 
Или как-нибудь другим образом, чтобы был под рукой список скриптов.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Можно ли так сделать: закрепить ярлык скрипта на панели задач, чтобы при клике правой кнопкой мыши вызывался список моих скриптов.
Как здесь: 
Или как-нибудь другим образом, чтобы был под рукой список скриптов.
AutoHotKey располагает собственным меню! ![]()
Например так:
;= Создаем 3 тестовых скрипта
;====== [ Цикл нужен только для теста
Loop, 3
{
IfNotExist, % A_Index ".ahk"
{
Text_%A_Index% := "MsgBox, " A_Index
FileAppend, % Text_%A_Index%, % A_Index ".ahk"
}
}
;==============================================
; Адреса скриптов в собственной папке "Имя скрипта")
Script_1 := A_ScriptDir "\1.ahk"
Script_2 := A_ScriptDir "\2.ahk"
Script_3 := A_ScriptDir "\3.ahk"
; Создать всплывающее меню добавлением пунктов в него.
Menu, MyMenu, Add, 1, RanScript
Menu, MyMenu, Add, 2, RanScript
Menu, MyMenu, Add, 3, RanScript
return ; Конец секции автовыполнения.
RanScript: ; Если скрипт существует - запускает скрипт
IfExist, % Script_%A_ThisMenuItem%
Run, % Script_%A_ThisMenuItem%
else
MsgBox, % "Скрипт Не найден`n" Script_%A_ThisMenuItem%
return
^RButton::
#z::
Menu, MyMenu, Show ; Показывать меню по нажатию Win-Z или Ctrl+Правый клик. ,
returnПо аналогии с приведенным примером, достаточно закрепить в панели задач сначала само приложение AHK, затем часто используемые скрипты, совершив ПКМ по иконке закрепленного приложения, либо простым перетаскиванием скриптов на панель задач.
migomigo, подскажите, пожалуйста, можно ли в Ваше меню динамически добавлять или удалять пункты меню?
Теоретически да.
Но это уже следующий этап.. ![]()
Попробуйте для начала в ручную настроить себе этот скрипт под свой список..
migomigo, спасибо!
migomigo, подскажите, пожалуйста, можно ли в Ваше меню динамически добавлять или удалять пункты меню?
Как вариант, динамичность добавления может быть осуществлена посредством перезапуска.
Скрипт сканирует все скрипты в собственной папке, и на основании существующих скриптов АХК, создает новое меню.
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
#SingleInstance, Force
Loop, %A_ScriptDir%\*.ahk
{
If !(A_LoopFileFullPath == A_ScriptFullPath) {
If Scc >=5
Scc = 0
SC++
Scc++
Dir_%A_Index% := A_LoopFileFullPath
Script_Name%A_Index% := RegExReplace(A_LoopFileName, "\..*$")
MSGG .= SC ": " Script_Name%A_Index% "`n"
Menu, MyMenu, Add, % Script_Name%A_Index%, RanScript
Menu, MyMenu, Icon, % Script_Name%A_Index%, %A_AhkPath%, % Scc
}
}
MsgBox, % "В папке обнаружен :" SC " скриптов`n" MSGG
return
RanScript: ; Если скрипт существует - запускает скрипт
Dir_ := A_ScriptDir "\" A_ThisMenuItem ".ahk"
IfExist, % Dir_
Run, % Dir_
else
MsgBox, % "Скрипт Не найден`n" Dir_
return
^RButton::
#z::
Menu, MyMenu, Show ; Показывать меню по нажатию Win-Z или Ctrl+Правый клик. ,
return
Исправил ошибку с адресом запуска..
becauseim
А где находится приложение ahk? Все exe в папке с программой - вроде бы справочные файлы.
Модератор: Оверквотинг удалён. Замечание.
hxxxrz, сразу перетащите любой скрипт на панель задач.
becauseim .ahk не перемещается сразу на панель, его можно только закрепить на ярлык программы.
hxxxrz, сразу перетащите любой скрипт на панель задач, и тогда программа AHK будет закреплена на панели, а выбранный скрипт попадет в закрепленный список.
becauseim, хм странно, у меня скрипты не перетаскиваются на панель задач( Может это только в win10 можно сделать, у меня 7.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться