Тема: AHK: Поиск заданного пункта в панели меню
Благодаря пользователю Malcev, использую условие на основе проверки активности заданного пункта меню:
WordWrap := SelectMenu("ahk_class Notepad", 2, 0)
if WordWrap = 8
MsgBox Word Wrap is Active!
else
MsgBox Word Wrap is not Active!
return
SelectMenu(program, SubMenuNumber, ItemNumber){
Hwnd := WinExist(program)
MainMenu := DllCall("GetMenu", UInt, Hwnd)
SubMenu := DllCall("GetSubMenu", UInt, MainMenu, Int, SubMenuNumber)
SendMessage, 0x117, SubMenu, ItemNumber,, ahk_id %Hwnd% ; WM_INITMENUPOPUP
return DllCall("GetMenuState", UInt, SubMenu, UInt, ItemNumber, UInt, 0x400)
}
В программе, в которой я работаю, такой пункт имеет свойство перемещаться в порядковом расположении.
Необходимо, чтобы при запуске сценария, заданный пункт проверялся на порядковое расположение в подменю. Т.е. на основе данного примера, производился поиск пункта Word Wrap не по всей панели меню, а для ускорения поиска, внутри меню Format, после чего ему присваивался ItemNumber. В сети нашел menu-search.ahk, но не знаю, как его использовать. Помогите, пожалуйста, реализовать такой поиск.