chzj589
发表于 2016-12-28 15:51:28
回复xzh531
chzj589 发表于 2016-12-28 15:34 http://www.autoitx.com/images/common/back.gif
chzj589
发表于 2016-12-28 16:10:19
回复chzj589
除了字符,显示背景图片,如果背景不加图片就可以,我记得他们好像是通过DLLCALL来 ...
xzh531 发表于 2016-12-28 15:26 http://www.autoitx.com/images/common/back.gif
这样应该可以,你试试
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <WindowsConstants.au3>
Global $SS_CENTER, $SS_CENTERIMAGE
$Form1 = GUICreate("Form1", 633, 444, 192, 124, BitOR($WS_SYSMENU, $WS_POPUP, $DS_MODALFRAME))
$BACKAC = GUICtrlCreatePic(@ScriptDir & "\SpxImage2.jpg", 0, 0, 633, 444)
GUICtrlSetState(-1, $GUI_DISABLE)
$Labela = GUICtrlCreateLabel("", 2, 0, 566, 30, $SS_CENTER + $SS_CENTERIMAGE, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetBkColor(-1, -2)
GUICtrlSetCursor(-1, 0)
GUICtrlSetColor(-1, 0x003300)
GUICtrlSetFont(-1, 14, 600, 0, 'Verdana')
$Labelb = GUICtrlCreateLabel('×', 598, -7, 32, 37)
GUICtrlSetBkColor(-1, -2)
GUICtrlSetCursor(-1, 0)
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetFont(-1, 24, 400, 0, 'Verdana')
GUICtrlSetOnEvent($Labelb, "_Form1Close")
GUICtrlSetCursor($Labelb, "SIZEALL");鼠标指针
$Labelb2 = GUICtrlCreateLabel('-', 566, -7, 32, 37);, $SS_CENTER)
GUICtrlSetBkColor(-1, -2)
GUICtrlSetCursor(-1, 0)
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetFont(-1, 24, 400, 0, 'Verdana')
GUICtrlSetCursor($Labelb2, "SIZEALL") ;鼠标指针
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Labelb
Exit
Case $Labelb2
btnMinClick()
EndSwitch
WEnd
Func btnMinClick();窗口缩小任务栏
WinSetState($Form1, "", @SW_MINIMIZE)
EndFunc ;==>btnMinClick
xzh531
发表于 2016-12-28 16:45:16
回复 17# chzj589
是的,可以了,你是通过按labela来移动窗口,能通过mouse,在form1随便一个地方都可以移动窗口吗?
chzj589
发表于 2016-12-28 17:30:43
回复chzj589
是的,可以了,你是通过按labela来移动窗口,能通过mouse,在form1随便一个地方都 ...
xzh531 发表于 2016-12-28 16:45 http://www.autoitx.com/images/common/back.gif
把$Labela设置为窗口的坐标,
$Form1 = GUICreate("Form1", 633, 444, 192, 124, BitOR($WS_SYSMENU, $WS_POPUP, $DS_MODALFRAME))
$BACKAC = GUICtrlCreatePic(@ScriptDir & "\SpxImage2.jpg", 0, 0, 633, 444)
GUICtrlSetState(-1, $GUI_DISABLE)
$Labelb = GUICtrlCreateLabel('×', 598, -7, 32, 37)
GUICtrlSetBkColor(-1, -2)
GUICtrlSetCursor(-1, 0)
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetFont(-1, 24, 400, 0, 'Verdana')
GUICtrlSetCursor($Labelb, "SIZEALL");鼠标指针
$Labelb2 = GUICtrlCreateLabel('-', 566, -7, 32, 37);, $SS_CENTER)
GUICtrlSetBkColor(-1, -2)
GUICtrlSetCursor(-1, 0)
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetFont(-1, 24, 400, 0, 'Verdana')
GUICtrlSetCursor($Labelb2, "SIZEALL") ;鼠标指针
$Labela = GUICtrlCreateLabel("", 2, 0, 633, 444, $SS_CENTER + $SS_CENTERIMAGE, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetBkColor(-1, -2)
GUICtrlSetCursor(-1, 0)
GUICtrlSetColor(-1, 0x003300)
GUICtrlSetFont(-1, 14, 600, 0, 'Verdana')
GUISetState(@SW_SHOW)
这样鼠标就随便一个地方都可以移动窗口
xzh531
发表于 2016-12-29 09:09:25
回复 19# chzj589
你这$Labela全档住了,添加其他控件还有用吗?
chzj589
发表于 2016-12-29 11:01:11
本帖最后由 chzj589 于 2016-12-29 11:41 编辑
回复chzj589
你这$Labela全档住了,添加其他控件还有用吗?
xzh531 发表于 2016-12-29 09:09 http://www.autoitx.com/images/common/back.gif
你说呢?
xzh531
发表于 2016-12-29 15:24:17
回复 21# chzj589
你最后那代码,
$Labela = GUICtrlCreateLabel("", 2, 0, 633, 444, $SS_CENTER + $SS_CENTERIMAGE, $GUI_WS_EX_PARENTDRAG)
这个label整个窗口那么大,可以点任何地方拖动,但就是添加 其他控件都给档住了。
chzj589
发表于 2016-12-29 16:07:47
回复 22# xzh531
我上面的那两图为什么没被
$Labela = GUICtrlCreateLabel("", 2, 0, 633, 444, $SS_CENTER + $SS_CENTERIMAGE, $GUI_WS_EX_PARENTDRAG)档住了,就是最后那代码,
动点脑筋?
chzj589
发表于 2016-12-29 16:11:47
回复 23# chzj589
关闭与缩小控件就没有挡住,那其它控件会被挡住吗?想想为什么
zpmc123
发表于 2016-12-30 07:33:04
这么好的源码要多多学习
austere
发表于 2016-12-31 17:45:01
label实现,如图
jsdn2000
发表于 2017-1-3 22:27:19
代码确实能够用得着,继续关注。
xzh531
发表于 2017-1-6 11:18:01
回复 24# chzj589
我要的效果就是这样,随便点那里都可以拖动窗口。一行代码搞定了
#include <WinAPI.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Global Const $SC_MOVE = 0xF010
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 604, 365, -1, -1,BitOR($WS_SYSMENU, $WS_POPUP))
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $GUI_EVENT_PRIMARYDOWN
_SendMessage($Form1, $WM_SYSCOMMAND, $SC_MOVE + $HTCAPTION, 0)
EndSwitch
WEnd
chzj589
发表于 2017-1-6 12:03:46
回复 28# xzh531
不错!
但要改为事件模式好象改不了
xzh531
发表于 2017-1-7 10:03:40
回复 29# chzj589
改什么事件