水木子 发表于 2009-9-26 10:32:55

借楼主的问题再请教下大家。
如何做到像下面图片那样,鼠标经过文字时,文字底部出现下划线。

水木子 发表于 2009-9-26 10:34:31

哇!哈哈,杂眼一看好像自己的回复被评分,“幻觉”:face (33):

afan 发表于 2009-9-26 10:35:05

我都晕了,啥时候在这评分了,呵呵

水木子 发表于 2009-9-26 10:45:35

我都晕了,啥时候在这评分了,呵呵
afan 发表于 2009-9-26 10:35 http://www.autoitx.com/images/common/back.gif


呵呵!挺忽悠的吧!

能帮忙解答下上面的问题吗?

afan 发表于 2009-9-26 10:47:11

看到过类似的例子,我找找先

水木子 发表于 2009-9-26 10:48:22

看到过类似的例子,我找找先
afan 发表于 2009-9-26 10:47 http://www.autoitx.com/images/common/back.gif

我也在找:face (36):

afan 发表于 2009-9-26 10:56:01

$Form1 = GUICreate("超链", 137, 146, 404, 273)
$txt = GUICtrlCreateLabel("联系我们", 40, 40, 52, 16)
GUICtrlSetCursor(-1, 0)
GUISetState()
Dim $bj = 0
While 1
        $zt = GUIGetCursorInfo($Form1)
        If $zt = $txt And $bj = 0 Then
                GUICtrlSetFont(-1, 9, 400, 4)
                GUICtrlSetColor(-1, 0x0000FF)
                $bj = 1
        ElseIf $zt <> $txt And $bj = 1 Then
                GUICtrlSetFont(-1, 9, 400, 0)
                GUICtrlSetColor(-1, 0x000000)
                $bj = 0
        EndIf

        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case - 3
                        Exit
                Case $txt
                        Msgbox(0,0,'OK')
        EndSwitch
WEnd

水木子 发表于 2009-9-26 10:59:00

22# afan

谢谢!学习学习!

afan 发表于 2009-9-26 11:02:15

顺便给LZ写了个例子,关于事件模式Opt("GUIOnEventMode", 1)

$Form = GUICreate("宝宝出生倒计时计算器", 425, 400)
GUISetOnEvent(-3, "tc")
$lj = GUICtrlCreateLabel("访问鼎盛中国博客", 280, 323, 200, 17)
GUICtrlSetFont(-1, 10, 400, 4)
GUICtrlSetColor(-1, 0x0000FF)
GUICtrlSetCursor(-1, 0)
GUICtrlSetOnEvent(-1, "lj")
GUISetState()

While 1
        Sleep(5)
WEnd

Func tc()
        Exit
EndFunc   ;==>tc

Func lj()
        ShellExecute("http://www.autoitx.com")
EndFunc   ;==>lj

smooth 发表于 2009-9-26 22:02:34

24# afan


谢谢。我是新手,你的代码我要好好研究研究。

smooth 发表于 2009-9-27 10:13:04

$Form1 = GUICreate("超链", 137, 146, 404, 273)
$txt = GUICtrlCreateLabel("联系我们", 40, 40, 52, 16)
GUICtrlSetCursor(-1, 0)
GUISetState()
Dim $bj = 0
While 1
        $zt = GUIGetCursorInfo($Form1)
        I ...
afan 发表于 2009-9-26 10:56 http://www.autoitx.com/images/common/back.gif

你这个循环里面,“while 1”中的“1”表示什么意思啊,是不是表示第1个循环呢?我看帮助里没有说这么细的。

afan 发表于 2009-9-27 10:16:24

1是表达式,若该表达式的值为true(真)(即1)则重复执行循环体语句

smooth 发表于 2009-9-27 10:58:22

本帖最后由 smooth 于 2009-9-27 11:00 编辑

1是表达式,若该表达式的值为true(真)(即1)则重复执行循环体语句
afan 发表于 2009-9-27 10:16 http://www.autoitx.com/images/common/back.gif

我根据你的思路,想达到这样的目的:当鼠标移动到"访问鼎盛中国网站",上面时,这几个字底下出现
横线,并且字体变成蓝色,当鼠标离开的时候,又还原回去。于是我写了下面这些代码,已经能实现
出现横线,但是字体不变蓝色。麻烦你帮我看看哪里的问题。……
$lj = GUICtrlCreateLabel("访问鼎盛中国网站", 260, 325,96, 14)
GUICtrlSetCursor(-1, 0)
;
Global $vPartEdge, $vPartText
$vPartEdge = 200
$vPartEdge = 400
$vPartText = '今天日期是:' & @YEAR & '年 ' & @MON & '月 ' & @MDAY & '日'
$vPartText = 'Coded by 鼎盛中国,QQ:93737788'
_GUICtrlStatusBar_Create($Form, $vPartEdge, $vPartText)

_Set(GUICtrlRead($Date))
GUISetState(@SW_SHOW);窗口创建后是处于隐藏状态的,因此您必须使用本函数来使它们显示出来(@SW_SHOW).

Dim $bj = 0
While 1
        $zt = GUIGetCursorInfo($Form);获取(相对于 GUI 窗口的)鼠标位置.
      If $zt = $lj And $bj = 0 Then
                GUICtrlSetFont(-1, 9, 400, 4)
                GUICtrlSetColor(-1, 0x0000FF)
                $bj = 1
      ElseIf $zt <> $lj And $bj = 1 Then
                GUICtrlSetFont(-1, 9, 400, 0)
                GUICtrlSetColor(-1, 0x000000)
                $bj = 0
      EndIf
          $nMsg = GUIGetMsg()
          Switch $nMsg
                  Case $GUI_EVENT_CLOSE
                          _UnLoadSkin($hSkinDll)
                          FileDelete($SkinFile)
                          FileDelete($SkinDll)
                        Exit
                  Case $Date
                          _Set(GUICtrlRead($Date))
                          _Write($IniFile, 'Baby', 'PregnantDate', GUICtrlRead($Date))
                        Case - 3
                                Exit
                  Case $lj
                    ShellExecute("http://hi.baidu.com/cnace")
        EndSwitch
WEnd
……

afan 发表于 2009-9-27 11:43:59

GUICtrlSetColor(-1, 0x0000FF) 这里面-1是指最后创建的控件,显然你的不是。将4处-1都改成 $lj

smooth 发表于 2009-9-27 12:43:06

GUICtrlSetColor(-1, 0x0000FF) 这里面-1是指最后创建的控件,显然你的不是。将4处-1都改成 $lj
afan 发表于 2009-9-27 11:43 http://www.autoitx.com/images/common/back.gif

改了还是不能显示蓝色。
页: 1 [2] 3
查看完整版本: [已解决]请问如何在GUI控件上插入超链接?