本帖最後由 rictirse 於 2014-12-5 16:39 編輯
一開始GUI會先常駐在右上角
滑鼠移動過去後視窗會彈出- #include <GUIConstants.au3>
- #include <WindowsConstants.au3>
- Opt("GUIOnEventMode", 1)
- Dim $FormName = "伸縮視窗"
- Dim $FormWidth = 130
- Dim $FormHeight = 115
- $WinForm1 = GUICreate ( $FormName, $FormWidth, $FormHeight, @DeskTopWidth-$FormWidth-1, 20, $WS_POPUP, $WS_EX_TOOLWINDOW)
- GUISetOnEvent ( $GUI_EVENT_CLOSE, "_Exit")
- GUISetState (@SW_SHOW, $WinForm1)
- WinSetOnTop ( $WinForm1, "", 1)
- While True
- _GetPos()
- Sleep (50)
- WEnd
- Func _GetPos()
- $FormPos = WinGetPos($WinForm1)
- $MousePos = MouseGetPos()
- If $MousePos[0] >= $FormPos[0] And $MousePos[1] >= $FormPos[1] And ($FormPos[1]+$FormPos[3]) >= $MousePos[1] Then
- WinMove ($WinForm1,"", @DeskTopWidth-$FormWidth-1, 20,Default,Default,2)
- Else
- WinMove ($WinForm1,"", @DeskTopWidth-$FormWidth+125, 20,Default,Default,2)
- EndIf
- EndFunc
- Func _Exit()
- Exit
- EndFunc
複製代碼 |