在两个位置之间移动 window
Moving a window between two positions
您好,我正在尝试制作一个在两个位置之间移动活动 window 的宏,
但前提是它的实际位置是两个定义之一。
X1 := (0.0395839*A_ScreenWidth)
Y1 := (0.049074*A_ScreenHeight)
X2 := (0.341146*A_ScreenWidth)
Y2 := (0.085185*A_ScreenHeight)
F1:: WinMove, A,, X1, Y1 ; works
F2:: WinMove, A,, X2, Y2 ; works
F3:: ; doesn't work. What am I doing wrong here?
WinGetPos, Xa, Ya,,, A
If (Xa ="X1" AND Ya = "Y1")
WinMove, A,, X2, Y2
else
If (Xa = "X2" AND Ya = "Y2")
WinMove, A,, X1, Y1
return
您尝试做的是将变量 Xa 与 "X1" 的字符串值进行比较,而不是将变量 X1 中包含的值进行比较。您需要删除引号,如下所示:
F3:: ; doesn't work. What am I doing wrong here?
WinGetPos, Xa, Ya,,, A
If (Xa == X1 AND Ya == Y1)
WinMove, A,, X2, Y2
else
If (Xa == X2 AND Ya == Y2)
WinMove, A,, X1, Y1
return
您好,我正在尝试制作一个在两个位置之间移动活动 window 的宏, 但前提是它的实际位置是两个定义之一。
X1 := (0.0395839*A_ScreenWidth)
Y1 := (0.049074*A_ScreenHeight)
X2 := (0.341146*A_ScreenWidth)
Y2 := (0.085185*A_ScreenHeight)
F1:: WinMove, A,, X1, Y1 ; works
F2:: WinMove, A,, X2, Y2 ; works
F3:: ; doesn't work. What am I doing wrong here?
WinGetPos, Xa, Ya,,, A
If (Xa ="X1" AND Ya = "Y1")
WinMove, A,, X2, Y2
else
If (Xa = "X2" AND Ya = "Y2")
WinMove, A,, X1, Y1
return
您尝试做的是将变量 Xa 与 "X1" 的字符串值进行比较,而不是将变量 X1 中包含的值进行比较。您需要删除引号,如下所示:
F3:: ; doesn't work. What am I doing wrong here?
WinGetPos, Xa, Ya,,, A
If (Xa == X1 AND Ya == Y1)
WinMove, A,, X2, Y2
else
If (Xa == X2 AND Ya == Y2)
WinMove, A,, X1, Y1
return