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

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

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

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

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

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

WinMove

Изменяет позицию и/или размеры указанного окна.

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

Параметры

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

Примечания

Если значения для Width и Height малы (или отрицательные), большинство окон, имеющих полосу заголовка, уменьшатся только до размера 112 х 27 пикселов (однако некоторые типы окон могут иметь другой минимальный размер). Если Width и Height велики, большинство окон не станут выходить за пределы рабочего стола более чем примерно на 12 пикселов.

Отрицательные значения для координат X и Y допускаются в целях поддержки многомониторных систем и чтобы позволить окну полностью перемещаться за пределы экрана.

Хотя WinMove не может перемещать свёрнутые окна, она может перемещать скрытые, если включено обнаружение скрытых окон (команда DetectHiddenWindows).

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

Примеры

Run, calc.exe
WinWait, Калькулятор
WinMove, 0, 0 ; Сдвинуть окно, найденное WinWait, к верхнему левому углу экрана.

SplashTextOn, 400, 300, Clipboard, Буфер обмена содержит:`n%clipboard%
WinMove, Clipboard, , 0, 0 ; Сдвинуть всплывающее окно в левый верхний угол. 
Msgbox, Нажмите OK, чтобы убрать всплывающий текст.
SplashTextOff

; Следующая функция помещает указанное окно в центр экрана:
CenterWindow(WinTitle)
{
    WinGetPos,,, Width, Height, %WinTitle%
    WinMove, %WinTitle%,, (A_ScreenWidth/2)-(Width/2), (A_ScreenHeight/2)-(Height/2)
}

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

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