找回密码
 加入
搜索
查看: 5612|回复: 5

[AU3基础] [已解决]窗口标题 正则匹配公式

  [复制链接]
发表于 2012-12-5 17:26:18 | 显示全部楼层 |阅读模式
本帖最后由 elexy 于 2012-12-5 19:09 编辑

目的:正常关闭当前所有通过 powerpoint  打开的PPT或PPS文件
您会问为什么不用 ProcessClose("powerpnt.exe") ,因为经试验在win7系统下,某些特定操作中,非正常关闭powerpoint会引起系统字体显示异常。

我的思路:通过ControlSend向  窗体标题中含有 PowerPoint 字符的窗口 发送 Alt+F4 命令。

以下是两个窗口标题名称

Microsoft PowerPoint - [test.ppt]          PowerPoint 幻灯片放映 - “test.pps”

我看了帮助: REGEXPTITLE -窗口标题使用 正则表达式 (如果正则表达式错误,将把 @error 设置为 2)

但是不知道正则公式怎么写?当然,高手们如果有更加 高效、稳定、静默 的方法可以分享一下。
发表于 2012-12-5 18:22:16 | 显示全部楼层
本帖最后由 annybaby 于 2012-12-5 18:23 编辑

回复 1# elexy


    不知道就去学,没有人生出来就会的~~
论坛有好多资料~
再说,如果只是这个简单匹配的话,只要将标题匹配模式改成2即可(部分匹配~~)
发表于 2012-12-5 18:41:42 | 显示全部楼层
WinList('[REGEXPTITLE:Microsoft PowerPoint|PowerPoint 幻灯片放映]')
 楼主| 发表于 2012-12-5 18:50:03 | 显示全部楼层
afan 发表于 2012-12-5 18:41


WinList('[REGEXPTITLE:PowerPoint]')

这样怎么样?
发表于 2012-12-5 18:51:38 | 显示全部楼层
回复 4# elexy


    你自己测试不就行了?
 楼主| 发表于 2012-12-5 19:00:27 | 显示全部楼层
本帖最后由 elexy 于 2012-12-5 19:06 编辑
回复  elexy


    你自己测试不就行了?
afan 发表于 2012-12-5 18:51


谢谢afan,刚这台电脑没有装PPT,所以随口问了一下。事实证明,你的公式可以正常获取,不知道为什么不能直接 用包含 powerpoint 即可。

ControlSend ( "窗口标题", "窗口文本", 控件ID, "字符串" [, 标志] )    才发现这个函数需要指定 控件ID,晕了,不能发送快捷键。。。。
发表于 2012-12-5 19:05:12 | 显示全部楼层
回复 6# elexy


    你的应该也是可以的~ “powerpoint”是这些都含有的字符串。 如果还有其它含有“powerpoint”字符的窗口不需捕捉,则表达式需添加更多的条件。
发表于 2012-12-5 19:26:29 | 显示全部楼层
回复 6# elexy


    ControlSend 不是发送按键的。
激活窗口直接Send('!{F4}')
发表于 2014-6-23 10:11:10 | 显示全部楼层
我是来学习的
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-29 10:49 , Processed in 0.082109 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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