不是采用固定的位置,这可能会表现不同的其他屏幕尺寸,你可以使用WinGetPos
并设置X-Y坐标动态。为了防止出现“冻结”鼠标当用户与亚洲货柜 + Tab键切换可以使鼠标锁定,只有当你的游戏是由与IfWinActive
检查运行。我选择了一个100毫秒的定时器来调用脚本,而不是使用100 ms等待的循环,但是使用循环或同时也可以。
SetTitleMatchMode, 2
SetTimer, CheckWin, 100
CheckWin:
{
IfWinActive, YourAppNameHere ; ONLY runs when Your App is Active
{
WinGetPos, XStart, YStart, Width, Height, YourAppNameHere ; Use AHK Window Spy
XPos:=XStart+(Width/2)
YPos:=YStart+(Height/2)
MouseMove, %XPos%, %YPos%, 90
Return
}
}
^F1:: ; Ctrl+F1 to stop the timer based loop
SetTimer, CheckWin, Off
Return
下面是另一种解决方案:
#SingleInstance Force
#installKeybdHook
#Persistent
Xbutton2:: ; Toggle fix mouse in Center
Confine := !Confine
ClipCursor(Confine, A_ScreenWidth/2, A_ScreenHeight/2, A_ScreenWidth/2, A_ScreenHeight/2)
Return
ClipCursor(Confine=True, x1=0 , y1=0, x2=1, y2=1)
{
VarSetCapacity(R,16,0), NumPut(x1,&R+0),NumPut(y1,&R+4),NumPut(x2,&R+8),NumPut(y2,&R+12)
Return Confine ? DllCall("ClipCursor", UInt,&R) : DllCall("ClipCursor")
}
'而(0 = 0)'是有点混乱,因为它简单地计算为'而(真)' – mikew 2013-02-17 04:42:02
@ user2079386,请提供一些反馈提出的解决方案,如果其中一个答案是真正有用的,那么请“接受”该答案。谢谢! – 2013-02-23 08:00:09