找回密码
 加入
搜索
查看: 1232|回复: 1

[已解决]如何将两个自定义函数合并到一起?(附源码)

[复制链接]
发表于 2009-12-22 15:37:40 | 显示全部楼层 |阅读模式
本帖最后由 痒痒 于 2009-12-29 14:49 编辑
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GuiOnEventMode", 1)
Opt("traymenumode", 1)
Opt("trayoneventmode", 1)

$show = TrayCreateItem("显示主窗口")
TrayItemSetOnEvent($show, "traymsg")
$exit = TrayCreateItem("退出")
TrayItemSetOnEvent($exit, "traymsg")
TraySetState()

#Region ### START Koda GUI section ### Form=
Dim $Button[4]
$Form1 = GUICreate("Form1", 314, 137, 326, 318)
$Button[0] = GUICtrlCreateButton("注册表", 24, 32, 121, 33, 0)
$Button[1] = GUICtrlCreateButton("计算器", 168, 32, 121, 33, 0)
$Button[2] = GUICtrlCreateButton("添加/删除", 24, 80, 121, 33, 0)
$Button[3] = GUICtrlCreateButton("最小到托盘", 168, 80, 121, 33, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

GUISetOnEvent($gui_event_close, "guimsg")
For $i = 0 To 3
        GUICtrlSetOnEvent($Button[$i], "guimsg")
Next


While 1
        Sleep(1)
WEnd

Func guimsg()
        Switch @GUI_CtrlId
                Case $gui_event_close
                        Exit
                Case $Button[0]
                        Run("regedit.exe")
                Case $Button[1]
                        Run("calc.exe")
                Case $Button[2]
                        Run("control.exe appwiz.cpl")
                Case $Button[3]
                        GUISetState(@SW_HIDE, $Form1)
        EndSwitch
EndFunc   ;==>guimsg

Func traymsg()
        Switch @TRAY_ID
                Case $show
                        GUISetState(@SW_SHOW, $Form1)
                Case $exit
                        Exit
        EndSwitch
EndFunc   ;==>traymsg
怎么将“traymsg()”这个自定义函数放到“guimsg()”里,但又能正常运行。可以这样再精简下么?
发表于 2009-12-22 21:40:28 | 显示全部楼层
很精简了,有必要整合吗?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2025-1-12 12:19 , Processed in 0.070199 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表