提示信息问题(提交为“已解决”后就没再看,傻了!2种方法!)
如下图为深度的优化工具:当鼠标移动到每个服务选项时,在右边的简介框里都能作出相应文字显示,我实验过GUICtrlSetTip,那种提示方式不能控制在简介框里的显示,求教~
[ 本帖最后由 powerofos 于 2008-7-10 14:56 编辑 ] 继续等~。。。。。 GuiCtrlSetData #include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 432, 377, 193, 125)
$Label1 = GUICtrlCreateLabel("Label1 dfsssssssssssssssssssssssssss", 128, 168, 255, 40)
GUICtrlSetTip(-1,"难道这样不行吗?")
$Group1 = GUICtrlCreateGroup("Group1", 80, 120, 281, 129)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
[ 本帖最后由 漠北雪~狼 于 2008-7-9 04:33 编辑 ] LZ的问题是个鼠标事件问题,捕获鼠标的移动事件,判断所在区域,执行相应的文本变化,应该还是可以的。 昨天发的帖子,再次感谢netegg,上次您的回答,我根据你的提示,解决了上个问题,这个问题仍然没解决~感谢,另外,我发现“顽固不化”经常出现在次版块,乐于助人,给他个勋章~:face (1):
[ 本帖最后由 powerofos 于 2008-7-9 12:40 编辑 ] 漠北雪~狼:
您提供的方法我能写出来,可是不能控制提示信息的显示位置啊,我要的是提示信息在我指定的框框里面显示,有办法办到吗?
如:顽固不化 所言,他理解对了,能具体点吗?
要首先捕获鼠标事件? 只是一个思路,鼠标移动提示可能会“频闪”,只要一个判断不在重写就没事了,自己去细化吧。
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 357, 124, 193, 125)
$Button1 = GUICtrlCreateButton("按钮1", 16, 16, 161, 33, 0)
$Button2 = GUICtrlCreateButton("按钮2", 16, 72, 161, 33, 0)
$Edit1 = GUICtrlCreateEdit("", 200, 16, 145, 89)
GUICtrlSetData(-1, "捕获移动示例,"&@CRLF&"BY 顽固不化")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg(1)
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $GUI_EVENT_MOUSEMOVE
if $nMsg>16 and $nMsg<16+161 And $nMsg>16 And $nMsg<16+33 Then
GUICtrlSetData($Edit1,"鼠标在第一个按钮上")
ElseIf $nMsg>16 and $nMsg<16+161 And $nMsg>72 And $nMsg<72+33 Then
GUICtrlSetData($Edit1,"鼠标在第二个按钮上")
Else
GUICtrlSetData($Edit1,"捕获移动示例,"&@CRLF&"BY 顽固不化")
EndIf
Case $Button1
GUICtrlSetData($Edit1,"干'按钮1'的事去吧")
Case $Button2
GUICtrlSetData($Edit1,"干'按钮2'的事去吧")
EndSwitch
WEnd
考完试,一觉醒来,就有好消息~GOOD! 感谢 顽固不化 的提供,回头试验去~ 原来GuiGetMsg还能返回高级模式的数组~~~~受教了,谢谢~ 顽固不化是好样的 理论上用GUIGetCursorInfo更好一点
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 357, 124, 193, 125)
$Button1 = GUICtrlCreateButton("按钮1", 16, 16, 161, 33, 0)
$Button2 = GUICtrlCreateButton("按钮2", 16, 72, 161, 33, 0)
$Edit1 = GUICtrlCreateEdit("", 200, 16, 145, 89)
GUICtrlSetData(-1, "捕获移动示例," & @CRLF & "BY 顽固不化")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg(1)
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
GUICtrlSetData($Edit1, "干'按钮1'的事去吧")
Case $Button2
GUICtrlSetData($Edit1, "干'按钮2'的事去吧")
EndSwitch
$mousepos = GUIGetCursorInfo($Form1)
Switch $mousepos
Case $Button1
GUICtrlSetData($Edit1, "鼠标在第一个按钮上")
Case $Button2
GUICtrlSetData($Edit1, "鼠标在第二个按钮上")
Case Else
GUICtrlSetData($Edit1, "捕获移动示例," & @CRLF & "BY 顽固不化")
EndSwitch
WEnd
实际使用中,为避免闪烁,可用guictrlread读取后加以判断, 哇,再有更新,可喜可贺!感谢楼上,可惜今天的金钱用完了~ 明天补上,一定一定!
回复 12# pcbar 的帖子
没加判断的话,比 顽固不化 提供的方法还要闪~
页:
[1]
2