thealert 发表于 2010-12-4 22:24:49

窗口特效测试程序附带源码

本帖最后由 thealert 于 2010-12-4 22:55 编辑

方便大家学习窗口特效,做出该程序,相信对大家学习窗口特效是很有帮助的
建议结合此贴学习http://www.autoitx.com/thread-751-1-1.html
软件截图



加载皮肤


代码:
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_icon=..\..\..\WINDOWS\system32\SHELL32.dll|-77
#AutoIt3Wrapper_outfile=C:\Documents and Settings\Administrator\桌面\窗口特效测试程序.exe
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_Res_Fileversion=0.0.0.2
#AutoIt3Wrapper_Res_Fileversion_AutoIncrement=p
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#Region AutoIt3Wrapper 预编译参数(常用参数)
;#AutoIt3Wrapper_Res_Field=AutoIt Version|%AutoItVer%                ;自定义资源段
;#AutoIt3Wrapper_Run_Tidy=                                                   ;脚本整理
;#AutoIt3Wrapper_Run_Obfuscator=                                                      ;代码迷惑
;#AutoIt3Wrapper_Run_AU3Check=                                                                 ;语法检查
;#AutoIt3Wrapper_Run_Before=                                                                 ;运行前
;#AutoIt3Wrapper_Run_After=                                                                        ;运行后
#EndRegion AutoIt3Wrapper 预编译参数设置完成
#cs ____________________________________

Au3 版本:
脚本作者:
        Email:
        QQ/TM:
脚本版本:
脚本功能:

#ce _______________脚本开始_________________



#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=c:\documents and settings\administrator\桌面\form2.kxf
$MainForm = GUICreate("窗口特效测试", 557, 264, 0, 0)
Skin()
$Group1 = GUICtrlCreateGroup("窗口打开方式", 8, 8, 313, 129)
GUICtrlSetFont(-1, 8, 800, 0, "华文新魏")
$Radio1 = GUICtrlCreateRadio("从左到右打开窗口", 32, 32, 129, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio2 = GUICtrlCreateRadio("从右到左打开窗口", 176, 32, 129, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio3 = GUICtrlCreateRadio("从上到下打开窗口", 32, 64, 129, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio4 = GUICtrlCreateRadio("从下到上打开窗口", 176, 64, 137, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio5 = GUICtrlCreateRadio("中间打开窗口", 96, 104, 113, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("特效类型", 8, 152, 313, 97)
GUICtrlSetFont(-1, 8, 800, 0, "华文新魏")
$Radio6 = GUICtrlCreateRadio("窗口向内重叠", 24, 176, 105, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio7 = GUICtrlCreateRadio("重获窗口交点", 184, 176, 129, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio8 = GUICtrlCreateRadio("使用滑动类型", 24, 216, 113, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Radio9 = GUICtrlCreateRadio("淡入淡出效果", 184, 216, 113, 25)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("查看效果", 324, 208, 75, 41)
$Label1 = GUICtrlCreateLabel("当前生成的窗体十六进制值", 336, 160, 148, 16)
GUICtrlSetFont(-1, 8, 800, 0, "华文新魏")
$Button2 = GUICtrlCreateButton("退出", 488, 208, 65, 41)
$Label2 = GUICtrlCreateLabel("", 332, 180, 100, 20)
GUICtrlSetFont(-1, 10, 800, 0, "华文新魏")
$Edit1 = GUICtrlCreateEdit("", 328, 32, 209, 121, BitOR($ES_READONLY,$ES_WANTRETURN))
GUICtrlSetData(-1, StringFormat("AW_HOR_POSITIVE (0x00000001) \r\nAW_HOR_NEGATIVE (0x00000002) \r\nAW_VER_POSITIVE (0x00000004)\r\nAW_VER_NEGATIVE (0x00000008) \r\nAW_CENTER    (0x00000010) \r\nAW_HIDE     (0x00010000) \r\nAW_ACTIVATE   (0x00020000) \r\nAW_SLIDE     (0x00040000) \r\nAW_BLEND     (0x00080000) "))
$Label3 = GUICtrlCreateLabel("                  键值参考", 344, 8, 116, 17)
GUICtrlSetFont(-1, 10, 400, 0, "华文新魏")
$Button3 = GUICtrlCreateButton("窗口抖动", 408, 208, 65, 41)
#EndRegion ### END Koda GUI section ###



$SubForm = GUICreate("子窗体 窗口特效", 421, 195, 0, 300)
GUISwitch($MainForm)
GUISetState(@SW_SHOW)

While 1
        $nMsg = GUIGetMsg(1)
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Switch $nMsg
                                Case $MainForm
                                        Exit
                                Case $SubForm
                                        GUISwitch($SubForm)
                  GUISetState(@SW_HIDE)
                        EndSwitch
                       
      Case $Button1
                        Dim $kind1,$kind2
                        If BitAND(GUICtrlRead($radio1), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind1=0x00000001
                        ElseIf BitAND(GUICtrlRead($radio2), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind1=0x00000002
                        ElseIf BitAND(GUICtrlRead($radio3), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind1=0x00000004
                  ElseIf BitAND(GUICtrlRead($radio4), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind1=0x00000008
                        ElseIf BitAND(GUICtrlRead($radio5), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind1=0x00000010
                        EndIf
                        If BitAND(GUICtrlRead($radio6), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind2=0x00010000
                        ElseIf BitAND(GUICtrlRead($radio7), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind2=0x00020000
                        ElseIf BitAND(GUICtrlRead($radio8), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind2=0x00040000
                        ElseIf BitAND(GUICtrlRead($radio9), $GUI_CHECKED) = $GUI_CHECKED Then
                                $kind2=0x00080000       
                        EndIf       
                        $kind=Hex($kind1+$kind2)
                        GUICtrlSetData($Label2,"0x"&$kind)
                        fun("0x"&$kind)
                Case $Button2
                        Exit
                Case $Button3
                        Jitter()
        EndSwitch
WEnd

Func fun($allkind)
       
        DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $SubForm, "int", 2000, "long", $allkind)
        GUISwitch($SubForm)
        GUISetState(@SW_SHOW)
        Sleep(1000)
        GUISetState(@SW_HIDE)
EndFunc

Func Jitter()
$sCoor = WinGetPos($MainForm)
For $i = 1 To 4
WinMove($MainForm, "", $sCoor + 3, $sCoor - 3, Default, Default, 1)
WinMove($MainForm, "", $sCoor, $sCoor - 6, Default, Default, 1)
WinMove($MainForm, "", $sCoor - 3, $sCoor - 3, Default, Default, 1)
WinMove($MainForm, "", $sCoor, $sCoor, Default, Default, 1)
Next
EndFunc   ;==>_Jitter
Func Skin()
      $Dll = DllOpen('Skin.dll')
      DllCall($Dll, "int", "SkinH_AttachEx", "str", "wish.she", "str", "mhgd")
      DllCall($Dll, "int", "SkinH_SetAero", "int", 1)
EndFunc   ;==>Skin


软件下载





脚本




皮肤

thealert 发表于 2010-12-4 22:25:50

已经提供源代码,方便大家参考学习

mo_shaojie 发表于 2010-12-4 23:29:40

这个特效不错.学习了

davidxu5945 发表于 2010-12-5 09:56:49

{:face (356):}谢谢分享,楼主辛苦了,

thealert 发表于 2010-12-5 11:53:14

多谢支持 呵呵

thealert 发表于 2010-12-5 11:54:14

对啦 小弟金币有点少,有什么办法快速提高金币吗,大大教下,谢谢

553670595 发表于 2010-12-5 12:35:21

对啦 小弟金币有点少,有什么办法快速提高金币吗,大大教下,谢谢
thealert 发表于 2010-12-5 11:54 http://www.autoitx.com/images/common/back.gif


    多发帖子。

zjg2003 发表于 2010-12-5 13:05:36

这个效果看起来不错哦

menfan1 发表于 2010-12-5 13:48:34

收集备用呵呵不错

chenronting 发表于 2010-12-5 14:12:33

哇哦,, 好强大啊。。 收藏了。 谢谢分享

飘云 发表于 2010-12-5 16:10:19

留名,便于以后查看,嘿嘿,多谢分享

thealert 发表于 2010-12-5 16:56:46

回复 11# 飘云


    你们金币怎么那么多啊 怎么赚的 教教小弟 呵呵

d5121226 发表于 2010-12-5 17:43:19

不错。。学习了

penguinl 发表于 2010-12-5 20:23:09

这个要好好收藏!!

xyold1 发表于 2010-12-5 21:05:51

不错!支持
页: [1] 2 3 4 5
查看完整版本: 窗口特效测试程序附带源码