窗口跟随例子报错,大家帮我试试![已解决]
本帖最后由 bdancerlc 于 2011-12-25 21:16 编辑原帖:http://www.autoitx.com/forum.php?mod=viewthread&tid=20581&highlight=%B8%FA%CB%E6
错误提示:
错误: $WM_MOVING 上一次定义为一个 'Const' 变量..
Global Const $WM_MOVING = 0x216
#include <StructureConstants.au3>
#include <WindowsConstants.au3>
Global Const $WM_MOVING = 0x216
Global $from2_s = False
$From1 = GUICreate('移动我', 300, 300, 300, 300)
$pos1 = WinGetPos($From1)
GUIRegisterMsg($WM_MOVING, 'WM_MOVING')
GUIRegisterMsg(0x3, "WM_MOVE")
GUISetState()
$From2 = GUICreate('', 300, 300, 600, 300, -1, -1, $From1)
GUISetState()
$from1_pos = WinGetPos($From1)
Do
Until GUIGetMsg() = -3
Func WM_MOVING($hWnd, $iMsg, $iwParam, $ilParam)
GUIRegisterMsg(0x3, "")
If $hWnd = $From1 And $from2_s = False Then
$tBuffer = DllStructCreate($tagRECT, $ilParam) ;$tagRECT结构,包含左、顶、右、底坐标
$iLeft = DllStructGetData($tBuffer, "Left")
$iTop = DllStructGetData($tBuffer, "Top")
WinMove($From2, "", $iLeft + $from1_pos, $iTop)
WinMove($From1, "", $iLeft, $iTop)
Return
Else
$from2_s = True
EndIf
If $hWnd = $From2 Then
$tBuffer = DllStructCreate($tagRECT, $ilParam) ;$tagRECT结构,包含左、顶、右、底坐标
$iLeft = DllStructGetData($tBuffer, "Left")
$iTop = DllStructGetData($tBuffer, "Top")
$from1_pos = WinGetPos($From1)
$x = $from1_pos + $from1_pos - $iLeft
$y = $from1_pos - $iTop
If Abs($x) < 30 And Abs($y) < 30 Then WinMove($From2, "", $from1_pos + $from1_pos, $from1_pos)
EndIf
GUIRegisterMsg(0x3, "WM_MOVE")
EndFunc ;==>WM_MOVING
Func WM_MOVE()
$from1_pos = WinGetPos($From1)
$from2_pos = WinGetPos($From2)
$x = $from1_pos + $from1_pos - $from2_pos
$y = $from1_pos - $from2_pos
If Abs($x) < 30 And Abs($y) < 30 Then
WinMove($From2, "", $from1_pos + $from1_pos, $from1_pos)
$from2_s = False
EndIf
EndFunc ;==>WM_MOVE
将一二行调换下位置试试~ 回复 2# afan
还是提示一样的错误:
错误: $WM_MOVING 上一次定义为一个 'Const' 变量..
Global Const $WM_MOVING = 0x216
回复afan
还是提示一样的错误:
bdancerlc 发表于 2011-12-25 20:53 http://www.autoitx.com/images/common/back.gif
如果是这个原因,注释掉第3行~ 回复 4# afan
谢谢,确实注释了第三行就可以运行了,这个吸附跟随效果中,移动窗口有重影...
哎...不知道a版有没有更好的办法?...
我先 修改标题...[已解决]
不纠结于这段代码了... 回复afan
...移动窗口有重影...
...
bdancerlc 发表于 2011-12-25 21:16 http://www.autoitx.com/images/common/back.gif
我试了下,没发现什么重影… 回复 6# afan
.....
悲剧,又只有我这边有这问题?
...... 回复afan
.....
悲剧,又只有我这边有这问题?
......
bdancerlc 发表于 2011-12-25 21:21 http://www.autoitx.com/images/common/back.gif
又是你改系统惹的~ 回复 8# afan
我晕,我是真没 修改系统啊,被A版一说,我这跳进黄河也洗不清了!
{:face (62):}
话说是不是机子要清理灰尘了,我好像有1年多没清理了... 回复afan
我晕,我是真没 修改系统啊,被A版一说,我这跳进黄河也洗不清了!
话说 ...
bdancerlc 发表于 2011-12-25 21:25 http://www.autoitx.com/images/common/back.gif
那是我记错人了…… 呵呵 回复 10# afan
上次你也说我 DIY 系统来着, 应该说的是我..
我现在不想折腾系统了,那玩意需要很好的认识系统比较全面的知识才能玩好!
我一直对DIY 软件比较有兴趣,比如给某个软件整个插件什么的,丰富软件功能...
不知道用AU3有没有比较好的方式来做插件..
当然,通过模拟点击之类的可以简单的实现,但是感觉这样有点不正规,而且出错的几率也比较大... 回复afan
上次你也说我 DIY 系统来着, 应该说的是我..
我现在不想折腾系统了,那玩意需要 ...
bdancerlc 发表于 2011-12-25 21:39 http://www.autoitx.com/images/common/back.gif
还是你强,你都会做插件~
我只会把别的软件拿来做我的插件。。。 回复 12# afan
a版就别谦虚了,我是想做,还没摸清楚方法呢!...
哎...只能慢慢摸索了..
{:face (203):} ?我这里一切正常!既无错误提示,又无重影! 回复 12# afan
{:1_521:}都这么强,我只会把插件揪出来删掉
页:
[1]