Перейти на главную страничку сайта (список статей, файлы для скачивания)

ФОРУМ (здесь можно обсудить эту статью, а также саму программу AutoHotkey и проблемы её использования)

Проект перевода документации AutoHotkey: перечень переведённых статей и статей в работе.

Оригинал статьи в AutoHotkey.chm: "WinMenuSelectItem", в содержании - "Window Management" - "Controls" - "WinMenuSelectItem", v1.0.46.03.

Ник переводчика: YMP.

Настоящее имя переводчика: Юрий Попов.

WinMenuSelectItem

Вызывает выполнение пункта строки меню указанного окна.

WinMenuSelectItem, WinTitle, WinText, Menu [, SubMenu1, SubMenu2, SubMenu3, SubMenu4, SubMenu5, SubMenu6, ExcludeTitle, ExcludeText]

Параметры

WinTitle Заголовок или часть заголовка окна (метод поиска можно задавать командой SetTitleMatchMode). Если этот и 3 других оконных параметра пустые или опущены, будет использовано последнее найденное окно. Если параметр задан буквой А и 3 других оконных параметра пустые или опущены, будет использовано активное окно. Чтобы задать окно через его класс, используйте конструкцию ahk_class ТочноеИмяКласса (можно посмотреть программой Window Spy). Чтобы использовать идентификатор процесса (PID), задайте параметр как ahk_pid %ПеременнаяСодержащаяPID%. Чтобы использовать группу окон, задайте параметр как ahk_group ИмяГруппы. Чтобы использовать идентификатор окна, задайте параметр как ahk_id %ПеременнаяСодержащаяID%. Сектор поиска можно сузить, задав несколько критериев, например, My File.txt ahk_class Notepad.
WinText Подстрока из одиночного текстового элемента окна (можно посмотреть программой Window Spy). Скрытые текстовые элементы определяются, если включено определение скрытого текста (команда DetectHiddenText).
Menu Имя меню верхнего уровня, например, Файл, Правка, Вид. Также может быть указано через позицию в строке меню: первое обозначается 1&, второе 2& и т.д.
SubMenu1 Имя или позиция пункта из какого-то из вышеуказанных меню.
SubMenu2 Если пункт, указанный в SubMenu1 сам является меню, этот параметр задаёт имя или позицию какого-то из его пунктов.
SubMenu3 То же, что выше.
SubMenu4 То же, что выше.
SubMenu5 То же, что выше.
SubMenu6 То же, что выше.
ExcludeTitle Окна, чей заголовок включает значение этого параметра, исключаются.
ExcludeText Окна, чей текст включает значение этого параметра, исключаются.

ErrorLevel

Нуль, если команда выполнена успешно. Иначе 1.

Примечания

Чтобы эта команда работала, окно не обязано быть активным, однако с некоторыми окнами могут быть проблемы, если они свёрнуты.

Эта команда не работает с приложениями, имеющими нестандартную строку меню. Примеры таких программ - Microsoft Outlook и Outlook Express, которые в качестве строк меню используют замаскированные панели инструментов. В таких случаях может помочь применение команд ControlSend или PostMessage, которые могут работать с некоторыми из таких нестандартных строк меню.

Имена пунктов и меню нечувствительны к регистру (т.е. Файл и Сохранить - то же самое, что файл и сохранить). Также необязательно использование амперсанда (&) для обозначения подчёркнутой буквы в имени меню или пункта (т.е. &Файл - то же самое, что Файл).

Меню и пункты можно задавать через их позицию. Этот метод предназначен для поддержки меню, не содержащих текста (например, они могут содержать изображения текста вместо настоящего текста). Позиция 1& означает первый элемент (например, меню Файл), 2& - второй (например, меню Правка) и т.д. Линии-разделители считаются как пункты меню.

Заголовки и текст окон чувствительны к регистру. Скрытые окна не определяются, если это не задано командой DetectHiddenWindows.

Примеры

; Выбор пункта Файл -> Открыть в Блокноте:
WinMenuSelectItem, Безымянный - Блокнот, , Файл, Открыть

; То же самое, но вместо имён используются позиции:
WinMenuSelectItem, Безымянный - Блокнот, , 1&, 2&

Перейти на главную страничку сайта (список статей, файлы для скачивания)

© 2007 http://www.script-coding.com При любом использовании материалов сайта обязательна ссылка на него как на источник информации, а также сохранение целостности и авторства материалов.