WinMove

지정된 창의 위치 / 크기를 변경합니다.

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

매개변수

X, Y

목표창의 새 위치의 좌상 모서리 X와 Y 좌표 (픽셀 단위). 이 값은 표현식일 수 있습니다. 화면의 좌상 픽셀 좌표는 0, 0입니다.

이 매개변수만 주어졌다면, 마지막 발견 창이 목표 창으로 사용됩니다.

그렇지 않으면, X와 Y를 생략할 수 있습니다. 이 경우 현재 위치가 사용됩니다.

WinTitle

목표 창을 식별하는 창 제목 또는 다른 기준. WinTitle 참조. See also the known limitation below.

WinText

존재하면, 이 매개변수는 목표 창 텍스트의 부문자열입니다 (동봉된 Window Spy 유틸리티에 노출됨). 숨은 텍스트는 DetectHiddenText가 켜져 있어야 탐지됩니다. See also the known limitation below.

Width, Height

창의 새 너비와 높이 (픽셀 단위), 이 값은 표현식일 수있습니다. 하나라도 생략되거나 비어 있거나 단어 DEFAULT이면, 해당 차원의 크기는 바뀌지 않습니다.

ExcludeTitle

제목에 이 값이 있는 창은 무시합니다.

ExcludeText

텍스트에 이 값이 있는 창은 무시합니다.

논평

WidthHeight가 너무 작다면 (또는 음수라면), 제목 바가 있는 대부분의 창은 일반적으로 112 x 27 픽셀보다 더 작아지지 않습니다 (그렇지만, 어떤 유형의 창은 따로 최소 크기를 가질 수 있습니다). WidthHeight가 너무 크면, 대부분의 창은 바탕화면 크기의 대략 12 픽셀을 넘어가지 않습니다.

x와 y좌표에 음수 값은 허용됩니다. 다중-모니터 시스템을 지원하고 창을 완전히 화면으로부터 멀리 이동시킬 수 있습니다.

WinMove는 최소화된 창을 이동할 수 없지만, 숨은 창은 이동시킬 수 있습니다. 물론 DetectHiddenWindows가 켜져 있어야 합니다.

WinMove의 속도는 SetWinDelay에 영향을 받습니다.

창 제목과 텍스트는 대소문자를 구분합니다. 숨은 창은 DetectHiddenWindows가 켜져 있어야 탐지됩니다.

알려진 한계: If WinTitle or WinText contains (, [ or {, but not the closing counterpart, such as WinMove, KEDIT - [, the parameter is automatically interpreted as an expression, resulting in an error message. To avoid this, you can use a leading percent sign to force a literal string instead, such as WinMove, % "KEDIT - [".

On systems with multiple screens which have different DPI settings, the final position and size of the window may differ from the requested values due to OS DPI scaling.

ControlMove, WinGetPos, WinHide, WinMinimize, WinMaximize, WinSet

예제

Opens the calculator, waits until it exists and moves it to the upper-left corner of the screen.

Run, calc.exe
WinWait, Calculator
WinMove, 0, 0 ; Use the window found by WinWait.

Creates a fixed-size popup window that shows the contents of the clipboard and moves it to the upper-left corner of the screen.

SplashTextOn, 400, 300, Clipboard, 클립보드에 다음이 담겨 있습니다:`n%Clipboard%
WinMove, Clipboard,, 0, 0
MsgBox, 스플래시 텍스트를 취소하려면 OK를 누릅니다.
SplashTextOff

Centers a window on the screen.

CenterWindow("ahk_class Notepad")

CenterWindow(WinTitle)
{
    WinGetPos,,, Width, Height, %WinTitle%
    WinMove, %WinTitle%,, (A_ScreenWidth/2)-(Width/2), (A_ScreenHeight/2)-(Height/2)
}