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

用一个按键循环功能 按下隐藏 再按就显示

[复制链接]
发表于 2009-11-10 18:29:31 | 显示全部楼层 |阅读模式
HotKeySet("{F9}","ShowHotKey");按F8显示窗口
HotKeySet("{F10}","HIDEHotKey");按F9隐藏窗口

Func ShowHotKey();显示窗口
  GUISetState(@SW_SHOW)
EndFunc

Func HIDEHotKey();隐藏窗口
  GUISetState(@SW_HIDE)
EndFunc

这样是把隐藏和显示分开来用按键控制,怎么只用一个按按F9,按一下就隐藏再按一下就显示,循环的来
发表于 2009-11-10 19:14:51 | 显示全部楼层
逻辑判断真假
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

HotKeySet("{F9}","ShowHotKey")
$Form1 = GUICreate("", 300, 280)
GUISetState(@SW_SHOW)
$tf=True

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit

        EndSwitch
WEnd

Func ShowHotKey();显示窗口
        If $tf = True Then
                GUISetState(@SW_HIDE)
                $tf = False
        Else
                GUISetState(@SW_SHOW)
                $tf = True
        EndIf        
EndFunc

评分

参与人数 1金钱 +10 贡献 +10 收起 理由
afan + 10 + 10

查看全部评分

 楼主| 发表于 2009-11-10 19:26:21 | 显示全部楼层
太感谢水哥了,刚学,什么都还不懂
发表于 2009-11-10 19:30:17 | 显示全部楼层
太感谢水哥了,刚学,什么都还不懂
shweii 发表于 2009-11-10 19:26


呵呵!别抬举我啦!叫我“木子”就好,大家都是新人同学习、共进步吧!
发表于 2009-11-10 22:40:23 | 显示全部楼层
木子有才
有才木子
发表于 2009-11-13 15:59:23 | 显示全部楼层
本帖最后由 kleist 于 2009-11-13 16:16 编辑

WinGetState
用这个函数判断当前状态来决定隐藏或是显示也可以
#include <GUIConstantsEx.au3>

HotKeySet("{F9}","ShowHotKey")
$gui = GUICreate("", 300, 280)
GUISetState(@SW_SHOW)

While 1
        $Msg = GUIGetMsg()
        Select
             Case $Msg=$GUI_EVENT_CLOSE
                 Exit
        EndSelect
WEnd

Func ShowHotKey();显示窗口
        If WinGetState($gui) = 5 Then 
            guisetState (@SW_SHOW)
                 Else
            guisetState (@SW_HIDE)
                EndIf        
EndFunc
发表于 2009-11-13 16:10:30 | 显示全部楼层
HotKeySet帮助里面的example都不好好看,里面就是水木子的变量逻辑控制方法
不过我觉得楼上的方法更保险一点,因为有可能在脚本暂停的时候人为改变了状态
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-27 01:55 , Processed in 0.110163 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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