_WinAPI_MoveWindow
Изменить позицию и размеры указанного окна
#include <WinAPI.au3>
_WinAPI_MoveWindow($hWnd, $iX, $iY, $iWidth, $iHeight [, $fRepaint = True])
Параметры
$hWnd | Дескриптор окна |
$iX |
Новая координата левого края |
$iY |
Новая координата верхнего края |
$iWidth |
Новая ширина |
$iHeight |
Новая высота |
$fRepaint |
[необязательный] Указывает, будет ли окно перерисовано. Если True, окно получит сообщение $WM_PAINT. Если False, то не происходит перерисовка. Это относится и к клиентской области, и неклиентской области, и любой части родительского окна открытого в результате перемещения дочернего окна. Если False, то приложение должно явно аннулировать или перерисовать любые части окна и родительского окна, которые нуждаются в перерисовки. |
Возвращаемое значение
Успех: | Возвращает True |
Ошибка: | Возвращает False |
См. также
Искать MoveWindow в библиотеке MSDNПример
#include <WinAPI.au3>
; Запуск блокнота
Run('notepad.exe')
; Ожидание 5 секунд до появление окна блокнота
$hWnd = WinWait("[CLASS:Notepad]", "", 5)
If Not $hWnd Then
MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
Exit
EndIf
Sleep(400)
; Получает позицию и размеры окна, чтобы в дальнейшем возвратить начальные параметры.
Local $aPos = WinGetPos($hWnd)
; Перемещает и изменяет размер окна блокнота
_WinAPI_MoveWindow($hWnd, 10, 10, 200, 300)
Sleep(700) ; Ожидание 0,7 секунд после каждого перемещения окна, для просмотра эффекта
_WinAPI_MoveWindow($hWnd, 300, 100, 400, 200)
Sleep(700)
_WinAPI_MoveWindow($hWnd, 50, 300, 200, 200)
Sleep(700)
; Перемещает и устанавливает размеры окна в первоначальное состояние.
_WinAPI_MoveWindow($hWnd, $aPos[0], $aPos[1], $aPos[2], $aPos[3])
Sleep(700)
; Закрывает блокнот.
WinClose($hWnd)