找回密码
 加入
搜索
查看: 7073|回复: 6

如果用Autoit来隐藏主窗口,只显示子窗口

[复制链接]
发表于 2009-5-31 19:43:23 | 显示全部楼层 |阅读模式
本帖最后由 lxh495349465 于 2009-5-31 20:06 编辑

我想做一个程序的优化版,但是调出子窗口的时候,主窗口还在屏幕上,我现在已经利用Autoit通过激
活了主窗口,然后通过发送快捷键调出了程序的子窗口,但是调出子窗口的时候,主窗口还在显示,大家有什么方法能够让Autoit在调出子窗口时候将主窗口隐藏吗?

我前面的程序是  例如我要优化的程序是同目录下的:程序.exe,主窗口标题是:程序主窗口,
程序子窗口标题是:子窗口(注:打开主窗口后按Shift+End可以调出子窗口)
Run("程序.exe")
WinActive ( "程序主窗口")
Send("+END")
接下来就是怎么隐藏主窗口保留子窗口了
大家怎么设计?帮忙下。。谢谢
发表于 2009-5-31 20:04:20 | 显示全部楼层
本帖最后由 17911 于 2009-5-31 20:05 编辑

GUISetState(@SW_HIDE,$Form1)
发表于 2009-5-31 20:06:26 | 显示全部楼层
GUISetstate($SW_HIDE)
GuiSwitch(子窗体)
GUISetState($SW_SHOW)
发表于 2009-5-31 21:40:23 | 显示全部楼层
论坛已有相关帖子了
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
While 1
    ;$reset = False
    $Form1 = GUICreate(" 如何在主窗口中弹出一个列表对话框", 400, 200, 200, 200)
    $Button1 = GUICtrlCreateButton("开始", 150, 144, 121, 33, 0)
    $Form2 = GUICreate("列表对话框",  200, 200, 200, 200)
    $Button2 = GUICtrlCreateButton("确定", 24, 40, 121, 33, 0)
        GUICtrlCreateCombo("请选择", 24, 10, 121, 33)
    GUISetState(@SW_SHOW, $Form1)
 
    While 1
        $nMsg = GUIGetMsg(1)
        Switch $nMsg[0]
            Case $GUI_EVENT_CLOSE
                If $nMsg[1] == $Form1 Then
                    Exit
                ElseIf $nMsg[1] == $Form2 Then
                    GUISetState(@SW_SHOW, $Form1)
                    GUISetState(@SW_HIDE, $Form2)
                EndIf
            Case $Button1
                GUISetState(@SW_SHOW, $Form2)
                GUISetState(@SW_HIDE, $Form1)
            Case $Button2
                GUISetState(@SW_SHOW, $Form1)
                GUISetState(@SW_HIDE, $Form2)
                ;$reset = True
        EndSwitch
        ;If $reset =  False Then ExitLoop
    WEnd
WEnd
发表于 2009-6-1 09:45:11 | 显示全部楼层
之前没看到,这个也是实用的,记下了
 楼主| 发表于 2009-12-16 22:24:22 | 显示全部楼层
非常感谢大家的帮忙。提供的代码都可用。。谢谢
发表于 2010-4-12 22:28:19 | 显示全部楼层
非常感谢大家,我有学到一招。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-22 09:44 , Processed in 0.088438 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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