找回密码
 加入
搜索
楼主: cashiba

[AU3基础] 设置热键后,按热键后没有反应的原因?[已解决]

  [复制链接]
 楼主| 发表于 2016-9-22 23:55:08 | 显示全部楼层
本帖最后由 cashiba 于 2016-9-22 23:59 编辑

重新验证了一下,
("[TITLE:无标题 - 记事本;CLASS:notepad]")

("无标题 - 记事本")
不管是winactivate还是winwaitactive
前者就是没反应。
有点晕....
发表于 2016-9-23 09:16:58 | 显示全部楼层
很基础的东西,没有很难嘛!
Global $bPaused = False
Global $iPID
Global $iZ = 1

HotKeySet('{PAUSE}', 'HotKeyPressed')
HotKeySet('{ESC}', 'HotKeyPressed')
HotKeySet('{F10}', 'HotKeyPressed')
HotKeySet('{F9}', 'HotKeyPressed')

While 1
        Sleep(100)
WEnd

Func HotKeyPressed()
        Switch @HotKeyPressed
                Case '{PAUSE}'
                        $bPaused = Not $bPaused
                        While $bPaused
                                Sleep(100)
                                ToolTip($iZ)
                                $iZ += 1
                        WEnd
                        ToolTip('')

                Case '{ESC}'
                        Exit
                Case '{F10}'
                        runnote()
                Case '{F9}'
                        endnote()
        EndSwitch
EndFunc   ;==>HotKeyPressed

Func runnote()
        $iPID = Run('notepad.exe')
        $hWnd = WinWait('[CLASS:Notepad]')
        ControlSend($hWnd, '', 'Edit1', '现在的日期/时间: {F5}')
EndFunc   ;==>runnote

Func endnote()
        If ProcessExists($iPID) Then
                ProcessClose($iPID)
        EndIf
EndFunc   ;==>endnote
发表于 2016-9-23 10:53:20 | 显示全部楼层
可以看看帮助的。里面还是很详细。
发表于 2016-9-23 12:19:46 | 显示全部楼层
回复 14# cashiba


    这两个功能不一样,怎么比较 高效  的?
 楼主| 发表于 2016-9-23 19:17:03 | 显示全部楼层
本帖最后由 cashiba 于 2016-9-23 19:18 编辑
很基础的东西,没有很难嘛!
水木子 发表于 2016-9-23 09:16

目前还没入门,正在最基础的东西上打转....
本以为参数("[TITLE:无标题 - 记事本;CLASS:notepad]")
比参数("无标题 - 记事本")更具体所以更靠谱。
结果前面的例子中用了这个("[TITLE:无标题 - 记事本;CLASS:notepad]")居然没反应....
 楼主| 发表于 2016-9-23 19:22:03 | 显示全部楼层
回复  cashiba
    这两个功能不一样,怎么比较 高效  的?
1361739590 发表于 2016-9-23 12:19

我的意思是参数("[TITLE:无标题 - 记事本;CLASS:notepad]")与参数("无标题 - 记事本")比较
不是winactivate与winwaitactive两个函数比较...
 楼主| 发表于 2016-9-23 19:33:13 | 显示全部楼层
可以看看帮助的。里面还是很详细。
heroxianf 发表于 2016-9-23 10:53

感觉AU3的函数,特别是参数太灵活,不经常用还真吃不准。比喻:

WinWait("标题"[, "文本"[, 超时 = 0]])
参 数
标题----标题, 句柄, 类名. 参考 窗口标题与文本.

然后:
由函数 AutoItSetOption 使用 WinTitleMatchMode 选项设置.

模 式 1 (默认)---匹配开始部分.
模 式 2----------匹配标题的任意子串.
模 式 3----------完全匹配标题
模 式 4 ---------高级模式

必须用高级窗口描述代替, 工作于任何模式.

模 式 1 到 4

依照不同类型匹配不区分大小写.

高级窗口标题文本描述
窗口标题匹配参数使用特定描述. 这种描述使用下列属性识别窗口:

TITLE - 窗口标题
CLASS - 内部窗口类名
REGEXPTITLE - 窗口标题使用 正则表达式 (如果正则表达式错误, 则 @error 被设置为 2)
REGEXPCLASS - 窗口类名使用 正则表达式 (如果正则表达式错误, 则 @error 被设置为 2)
LAST - 先前 AutoIt 窗口函数使用的最后一个窗口 (窗口 Windows 函数管理)
ACTIVE - 当前活动窗口
X \ Y \ W \ H - 窗口的位置和大小
INSTANCE - 当多个属性时, 按指定属性的序号匹配(序号基于 1 计算)

窗口标题使用一或多个属性参数时的命令格式:
[属性1 : 值1; 属性2:值2]

信息量太大,刚接触的猛一下还晕菜......
发表于 2016-9-30 02:53:05 | 显示全部楼层
原来还有此窍门呢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-4-26 16:08 , Processed in 0.068536 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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