看了论坛的窗口渐显字例子,但自己上午还是花了1个多小时才解决,好悬又贴帖子问大家了!呵呵!#cs ____________________________________
Au3 版本:
脚本作者:
Email:
QQ/TM:
脚本版本:
脚本功能: 自我介绍
编写本脚本收获:
对有”教训“的要特别注意
1.设置透明窗口WinSetTrans();
2.对Label控件书写多行内容用&、@crlf和续行符号_完成;
3.对控件设置字体和颜色用GUICtrlSetFont、GUICtrlSetColor命令;
4.区域覆盖:点击$Label8居然没反映,代码没错误!原来是$Label1高度设置过大,覆盖住了$Label8,而窗口恰好设置了透明度,能看到它,哎!
5.学会了在窗口使用渐显文字,主要方法设置空内容标签Label,再用_test()函数完成,其中最关键的是函数中字符的拆分,记住是""不是" ",
中间有空格能把你害死!!!!!!浪费了近1个小时呀!教训!
#ce _______________脚本开始_________________
#include-once
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$Form=GUICreate("我的图片窗", 300, 200, -1, -1, $WS_SIZEBOX + $WS_SYSMENU+BitOR($WS_POPUP, $WS_BORDER))
GUISetBkColor(0xE0FFFF)
;WinSetTrans($Form,"",180) ;设置指定窗口的透明度 WinSetTrans("窗口标题","窗口文本",透明度)
$Icon1 = GUICtrlCreateIcon("D:\zgk_2010\autoit\AutoIt_zgk_works\PersonalTools\Logo.ico", -1, 16, 16, 41, 33)
$Label1 = GUICtrlCreateLabel("作者:一阳老爹" & @CRLF & _
"联系:" & @CRLF & _
"推介网站:" & @CRLF & _
"软件说明:这是本人的第一个计算机运维" & @CRLF & _
"工具,缺点多多!加之水平有限,如果发" & @CRLF & _
"现问题,请及时通知以便改正!" & @CRLF & _
"版权:个人所有,如有雷同,纯属虚构!", 80, 16, 1000,100)
$GraduallyWords= GUICtrlCreateLabel("", 35, 180, 260, 20)
GUICtrlSetColor(-1,0xff0000)
GUISetState()
_test($GraduallyWords, "点击退出")
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GraduallyWords
GUIDelete($Form)
Exit
EndSwitch
WEnd
Func _test($GraduallyLabel,$GraduallyContent);用"渐显字内容“的函数,$GraduallyLabel对应标签控件$GraduallyWords,$GraduallyContent对应"渐显字内容"
$Content=StringSplit($GraduallyContent,"")
;把"渐显字的内容"拆分,分割符号是”“,"渐显字内容"不显示是把”“写成” “,多了空格!
;至于内容不完全显示,是自己GUICtrlSetData()不完全造成问题
For $i=1 To $Content[0]
If $i=1 Then
GUICtrlSetData($GraduallyLabel,$Content[1]);显示第1个渐显字
ElseIf $i=2 Then
GUICtrlSetData($GraduallyLabel,$Content[1] & $Content[2]);显示第2个渐显字并与上一个渐显字连接上,以下类推
ElseIf $i=3 Then
GUICtrlSetData($GraduallyLabel,$Content[1] & $Content[2] & $Content[3])
ElseIf $i=4 Then
GUICtrlSetData($GraduallyLabel,$Content[1] & $Content[2] & $Content[3] & $Content[4])
EndIf
Sleep(500)
Next
EndFunc
|