jycel 发表于 2009-3-26 17:49:51

[已解决]GUI函数功能请教

有这么几个功能请教下!
一:在GUI上面,当点击一个按钮,比如“配置”,本身窗口就隐藏,弹出另外一个GUI界面退出后这个又关了,还原主窗口
二:或者点击这个按钮后,在本身GUI界面下,显示连接到的GUI,再点下又关了,如图
不知道这二个是用什么方法或函数做到的,请教下!
三:有的程序打开是灰色的,在上面添加了一个输入密码后才开启这功能!
以上都是成品中看到的,没原码不知道怎么做的

[ 本帖最后由 jycel 于 2009-3-28 09:38 编辑 ]

ceoguang 发表于 2009-3-26 19:23:36

原程序发上来看看.......

jycel 发表于 2009-3-26 20:03:00

http://www.autoitx.com/forum.php?mod=viewthread&tid=395&extra=page%3D1这个贴子中的就有二个

juyz 发表于 2009-3-26 20:31:53

这只是在两个GUI间的“@SW_HIDE” 和 “@SW_SHOW” 交替切换。http://www.autoitx.com/forum.php?mod=viewthread&tid=6001&page=1&fromuid=224#pid40524

jycel 发表于 2009-3-26 21:29:38

我试过用“@SW_HIDE” 和 “@SW_SHOW”但没有成功过!能不能给个例子?谢谢!

juyz 发表于 2009-3-26 21:32:59

回复 5# jycel 的帖子

肯定可以成功。

jycel 发表于 2009-3-27 10:40:19

请问这是二个独立的GUI吗?我设置了当按这个键时,隐藏本窗口,显示须要打开的,但没反应!

juyz 发表于 2009-3-27 15:49:47

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$GuiMain = GUICreate("父窗口", 253, 193, 192, 124)
$Button1 = GUICtrlCreateButton("关闭本窗口,显示子窗口", 33, 128, 165, 25, 0)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
GUISetState(@SW_HIDE,$GuiMain)
        $GUI_About = GUICreate("子窗口", 253, 193, -1, -1)
        $But_OK = GUICtrlCreateButton("关闭本窗口,显示交窗口", 33, 128, 165, 25, 0)
        GUISetState(@SW_SHOW)
        While 1
                $Msg_about = GUIGetMsg()
                Select
                        Case $Msg_about = $gui_event_close Or $Msg_about = $But_OK
                                GUIDelete($GUI_About)
                                GUISetState(@SW_SHOW,$GuiMain)
                                GUISetState(@SW_ENABLE, $GuiMain)
                                ExitLoop
                EndSelect
        WEnd
EndSwitch
WEnd

jycel 发表于 2009-3-27 16:51:39

已经掌握了!但这只限于同一脚本中,如果说有1.au3、2.au3……假如1.au3是我的主程序,后面的为各各小功能的吧!从1.au3中启动其它的AU3脚本行吗?代码太多全写在一个脚本中,有时会发生冲突,也不好管理!就像在分页函数例子中,只要用到函数GUICtrlIpAddress_Create它就会在每个页面都会显示,无法显示其它页时隐藏,好像不支持!

jycel 发表于 2009-3-27 17:19:46

试了下,把脚本译成EXE后,在对应按钮时加
ShellExecute("维护工具.exe","",@ScriptDir)
Exit
在第二个脚本中也同样,

ShellExecute("主程序.exe","",@ScriptDir)
Exit

sanhen 发表于 2009-3-27 18:07:29

回复 8# juyz 的帖子

多窗口建议用OnEvent模式。。。

jycel 发表于 2009-3-27 18:42:41

原帖由 sanhen 于 2009-3-27 18:07 发表 http://autoitx.com/images/common/back.gif
多窗口建议用OnEvent模式。。。
:face (3): 我学的时候就一直用onevent模式

漠北雪~狼 发表于 2009-3-27 18:51:26

http://www.autoitx.com/forum.php?mod=viewthread&tid=173&extra=page%3D2
另外,如果功能较多,代码较复杂,建议楼主把函数分成片,再用Include引用.

jycel 发表于 2009-3-27 18:55:39

原帖由 漠北雪~狼 于 2009-3-27 18:51 发表 http://autoitx.com/images/common/back.gif
http://www.autoitx.com/forum.php?mod=viewthread&tid=173&extra=page%3D2
另外,如果功能较多,代码较复杂,建议楼主把函数分成片,再用Include引用.
引用,就像UDF函数一样吗?UDF现在还不懂,不知道怎么引用,所以我现在是把它分成几个脚本,要用的都从主程序去开启!

漠北雪~狼 发表于 2009-3-28 02:51:25


做了个例子,但并不能说明全部的问题,问题在于:楼主你还需要慢慢的、更多的去看(看懂)帮助文档。
页: [1] 2
查看完整版本: [已解决]GUI函数功能请教