绘制的没有标题栏的窗口,怎么拖动窗口?
如:$main = GUICreate("Test",500,100,-1,-1,$WS_POPUP + $WS_SIZEBOX)怎么让鼠标在这个窗口的任何地方按住左键都可以拖动这个窗口?
GUICtrlCreateLabel("Move",28,28,32,20,$SS_BLACKFRAME,$GUI_WS_EX_PARENTDRAG)
加$GUI_WS_EX_PARENTDRAG时可以拖动,但这个样式只能给Label或图片加呀,也就是只能点住这个Label才能拖动。 #include <GUIConstantsEx.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <winapiex.au3>
#include <Process.au3>
Opt('MustDeclareVars', 1)
Global $gui
Example()
Func Example()
Local $checkCN, $msg
$gui=GUICreate("My GUI Checkbox",-1,-1,-1,-1,$WS_POPUP + $WS_SIZEBOX)
$checkCN = GUICtrlCreateGroup ("CHECKBOX 1", 10, 10, 200, 60, 0x0009)
GUISetState() ; will display andialog box with 1 checkbox
GUIRegisterMsg(0x0084, "WM_NCHITTEST")
While 1
$msg = GUIGetMsg()
Switch $msg
case -3
Exit
Case $checkCN
msgbox(0,0,"ok")
EndSwitch
WEnd
EndFunc ;==>Example
Func WM_NCHITTEST($hWnd, $iMsg, $iwParam, $ilParam)
If ($hWnd = $gui) and ($iMsg = $WM_NCHITTEST) then Return $HTCAPTION;
EndFunc 顺便问一下 如果还要实现右键菜单,双击出主窗口,是不是要注册WM_NCRBUTTONUP和WM_NCLBUTTONDBLCLK 回复 2# 3mile
谢了,粗粗试了下,不错。
不过,好象又有点问题了,就是$WS_SIZEBOX不管用了,也就是不能拖窗口大小了 本帖最后由 3mile 于 2011-5-26 11:11 编辑
回复3mile
谢了,粗粗试了下,不错。
不过,好象又有点问题了,就是$WS_SIZEBOX不管用了,也就 ...
happytc 发表于 2011-5-25 23:04 http://www.autoitx.com/images/common/back.gif
请移步:http://www.autoitx.com/thread-24958-1-1.html
页:
[1]