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

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

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

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

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

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

WinGetPos

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

WinGetPos [, X, Y, Width, Height, WinTitle, WinText, ExcludeTitle, ExcludeText]

Параметры

X, Y Имена переменных, куда будут помещены координаты верхнего левого угла окна. Если опущены, соответствующие значения не будут сохранены.
Width/Height Имена переменных, куда будут помещены ширина и высота окна. Если опущены, соответствующие значения не будут сохранены.
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).
ExcludeTitle Окна, чей заголовок включает значение этого параметра, исключаются.
ExcludeText Окна, чей текст включает значение этого параметра, исключаются.

Примечания

Если подходящее под параметры окно не найдено, выходные переменные будут пустыми.

Если WinTitle задать как Program Manager, команда вернёт размеры рабочего стола, которые обычно совпадают с текущим разрешением экрана.

Свёрнутые окна воспринимаются как имеющие размеры и позицию. Возвращаемые в этом случае значения могут варьироваться в зависимости от операционной системы и её настроек.

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

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

Пример

WinGetPos, X, Y, Width, Height, Калькулятор
MsgBox, Координаты окна Калькулятора: %X%`,%Y%; ширина: %Width%; высота: %Height%.

WinGetPos, X, Y, , , A  ; Задавайте "A", чтобы узнать положение активного окна.
MsgBox, Координаты активного окна: %X%`,%Y%

IfWinExist, Безымянный - Блокнот
{
    WinGetPos, Xpos, Ypos ; Использует окно, найденное выше.
    MsgBox, Координаты окна Блокнота: %Xpos%`,%Ypos%
}

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

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