viplight 发表于 2010-6-13 01:18:25

【已解决】逐渐显示的文字效果有没得办法实现。。。

本帖最后由 viplight 于 2010-6-13 12:58 编辑

烦大家帮帮忙,看看下面的代码所出现的效果能不能做的完整而完美!$titletwo = GUICreate("渐显字测试",280,200,-1,-1)
$guitest = GUICtrlCreateLabel("高手些帮帮忙,"&@CRLF&"我现在这样做出来不能点击“退出” ",15,30,260,40)
$guites1 = GUICtrlCreateLabel("",35,80,260,20)
$cancelbut= GUICtrlCreateButton("退出", 195, 170, 60,25)
GUISetState()
_test($guites1,"我想要的是这样的效果")

move()

While 1
        $s = 100
$msg=GUIGetMsg()
select
        Case $msg=$cancelbut Or $msg=$cancelbut
                        Exit
EndSelect
WEnd

Func _test($oem1,$date)
        $sspt = StringSplit($date,"")
        For $i=1 To $sspt
                If $i=1 Then
                        GUICtrlSetData($oem1,$sspt)
                ElseIf $i=2 Then
                        GUICtrlSetData($oem1,$sspt&$sspt)
                ElseIf $i=3 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt)
                ElseIf $i=4 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt)
                ElseIf $i=5 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt&$sspt)
                ElseIf $i=6 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt&$sspt&$sspt)
                ElseIf $i=7 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt)
                ElseIf $i=8 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt)
                ElseIf $i=9 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt)
                ElseIf $i=10 Then
                        GUICtrlSetData($oem1,$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt&$sspt)
                EndIf
                Sleep(500)
        Next
EndFunc
Func move()
      $s = 100
      While 1
                ControlMove('', '', $guitest, $s - 1, 0)
                $s -= 1
                Sleep(5)
      WEnd
        EndFunc   ;==>move

lynfr8 发表于 2010-6-13 01:48:39

$guitest = GUICtrlCreateLabel("高手些帮帮忙,"&@CRLF&"我现在这样做出来不能点击“退出” ",15,30,260,40)#include <GUIConstantsEx.au3>
Opt("GUIOnEventMode", 1)
$titletwo = GUICreate("渐显字测试", 280, 200, -1, -1)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSE")
$guitest = GUICtrlCreateLabel("高手些帮帮忙," & @CRLF & "我现在这样做出来不能点击“退出” ", 15, 30, 260, 40)
$guites1 = GUICtrlCreateLabel("", 35, 80, 260, 20)
$cancelbut = GUICtrlCreateButton("退出", 195, 170, 60, 25)
GUICtrlSetOnEvent($cancelbut, "CLOSE")
GUISetState()
_test($guites1, "我想要的是这样的效果")

move()

While 1
        $s = 100
        $msg = GUIGetMsg()
        Select
                Case $msg = $cancelbut Or $msg = $cancelbut
                        Exit
        EndSelect
WEnd

Func _test($oem1, $date)
        $sspt = StringSplit($date, "")
        For $i = 1 To $sspt
                If $i = 1 Then
                        GUICtrlSetData($oem1, $sspt)
                ElseIf $i = 2 Then
                        GUICtrlSetData($oem1, $sspt & $sspt)
                ElseIf $i = 3 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt)
                ElseIf $i = 4 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt)
                ElseIf $i = 5 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt & $sspt)
                ElseIf $i = 6 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt & $sspt & $sspt)
                ElseIf $i = 7 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt)
                ElseIf $i = 8 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt)
                ElseIf $i = 9 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt)
                ElseIf $i = 10 Then
                        GUICtrlSetData($oem1, $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt & $sspt)
                EndIf
                Sleep(500)
        Next
EndFunc   ;==>_test
Func move()
        $s = 100
        While 1
                ControlMove('', '', $guitest, $s - 1, 0)
                $s -= 1
                Sleep(5)
        WEnd
EndFunc   ;==>move

Func CLOSE()
        Exit
EndFunc   ;==>CLOSE帮助文件-GUI 相关 - 事件模式

viplight 发表于 2010-6-13 12:56:53

回复 2# lynfr8


    非常感谢{:face (88):}
页: [1]
查看完整版本: 【已解决】逐渐显示的文字效果有没得办法实现。。。