中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: AppActivate有时得不到焦点啊 上一主题 | 下一主题
azziporah
初级用户





积分 102
发帖 47
注册 2008-11-10
状态 离线
『楼 主』:  AppActivate有时得不到焦点啊

AppActivate在有手动操作或受其他窗口影响时常失效,不能得到焦点,这样就不能SendKey了,有办法解决这个问题么?
或者,有VBS之外的办法么?

2009-7-27 09:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  

AutoIt



2009-7-27 13:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复
qinchun36
高级用户

据说是李先生


积分 609
发帖 400
注册 2008-4-23
状态 离线
『第 3 楼』:  

那就每次 SENDKEY 之前 AppActivate 一下,我就这个干的。。。

2009-8-2 08:49
查看资料  发送邮件  发短消息 网志  OICQ (182484135)  编辑帖子  回复  引用回复
azziporah
初级用户





积分 102
发帖 47
注册 2008-11-10
状态 离线
『第 4 楼』:  



  Quote:
Originally posted by qinchun36 at 2009-8-2 08:49:
那就每次 SENDKEY 之前 AppActivate 一下,我就这个干的。。。

这样有缺陷,如果鼠标点到其它地方去了 AppActivate便再也无法回到焦点了

突发奇想,难道可以用SENDKEY发Alt+TAB或是Win+TAB?
如何确定已经切换到目标窗口了呢

2009-8-7 00:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 5 楼』:  

AppActivate



S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore
2009-8-7 02:47
查看资料  发短消息 网志   编辑帖子  回复  引用回复
qinchun36
高级用户

据说是李先生


积分 609
发帖 400
注册 2008-4-23
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by azziporah at 2009-8-7 12:13 AM:


这样有缺陷,如果鼠标点到其它地方去了 AppActivate便再也无法回到焦点了

突发奇想,难道可以用SENDKEY发Alt+TAB或是Win+TAB?
如何确定已经切换到目标窗口了呢

我想你没明白我说的意思,只要知道这个窗口的标题,是绝对可以的,给你个例子自己试试:
set sh = createobject("wscript.shell")
sh.run "notepad"
wscript.sleep 300
msgbox "现在我每隔3秒钟写一次,在间隔时间里面你可以切换到其他窗口,看看我能不能写出三个Fuck来!",48
for i=1 to 3
wscript.sleep 3000
sh.appactivate "记事本"
wscript.sleep 30
sh.sendkeys "Fuck "
next
msgbox "服还是不服!",16


2009-8-13 23:05
查看资料  发送邮件  发短消息 网志  OICQ (182484135)  编辑帖子  回复  引用回复
azziporah
初级用户





积分 102
发帖 47
注册 2008-11-10
状态 离线
『第 7 楼』:  

非常感谢楼上的热心回答,我用过同样的测试,发现不行,才发这个帖子来问的
我之前也是一直用AppActivate + SendKey 的方法
可惜这个方法需要满足一定的条件,才能运行成功
你可以试一下,最小化目标窗口,或是按下一些快捷键,如常用的Win+D、Ctrl+Alt+Z等等,还有一些事件或活动,都会使这种方法失效
另外,不同语言版本的操作系统的title不一样。再另,Win 7中的Win+P是否有影响尚未测试
也许这样的测试条件过于苛刻了,我只是问一下,有没有好的直接的解决办法,如果没有,只能想曲线救国的办法

2009-8-14 05:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qinchun36
高级用户

据说是李先生


积分 609
发帖 400
注册 2008-4-23
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by azziporah at 2009-8-14 05:31 AM:
非常感谢楼上的热心回答,我用过同样的测试,发现不行,才发这个帖子来问的
我之前也是一直用AppActivate + SendKey 的方法
可惜这个方法需要满足一 ...

尴尬鸟。。。
还真是受教了,哪天研究一下怎么排除这些特殊的快捷键的影响

2009-8-14 07:15
查看资料  发送邮件  发短消息 网志  OICQ (182484135)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: