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

[系统综合] 【已解决】窗口被激活了,缺无法输入内容,诡异的问题。

  [复制链接]
发表于 2013-9-20 22:09:52 | 显示全部楼层 |阅读模式
本帖最后由 zhybxyz 于 2013-9-26 13:23 编辑

由于办公需要,打算写一个单位部门QQ人员消息发送代码。
刚整理好思路,还没写几行代码就遇到问题了。
不知道有没有大侠遇到这样的问题,QQ聊天的窗口被激活后,

WinActivate("聊天人的名字")
WinWaitActive("聊天人的名字")

窗口被激活了,是可见状态,但是用Send("^v")无法输入内容,需要去鼠标点击一下聊天区域,这时输入法显示出来,才可以输入,状态就好像失去焦点一样,但由于QQ是自己画的GUI,失去焦点看不出来。这现象还不是100%出现,一会能成功,一会就不能Send("^v"),需要鼠标点一下,特别像失去焦点。

这样无法由程序来完成Send("^v"),目前解决是mouseclick去模拟点击一下,在Send("^v")。

不知道高手们怎么做才能激活后直接Send("^v")内容。
发表于 2013-9-20 22:54:33 | 显示全部楼层
点一下其实也没有什么不好的,不过可以不采用鼠标点击而使用发消息模拟鼠标点击的方法
发表于 2013-9-21 11:25:10 | 显示全部楼层
聊天窗口不激活都没关系,只要窗口不被最小化就能发送
$hWnd=WinWait("[TITLE:聊天人的名字; CLASS:TXGuiFoundation]")
ControlSend($hWnd,'','',"QQ自动发送消息测试")
ControlSend($hWnd,'','',"!S")

评分

参与人数 1金钱 +20 收起 理由
zhybxyz + 20 大师这个有效,但是还有问题,中文发不了, ...

查看全部评分

发表于 2013-9-21 12:37:23 | 显示全部楼层
回复 3# zldfsz


    我开始看到聊天窗口没有控ID件 就用POSTMESSAGE  输入内容可以 就是在发送组合键ALT+S这里卡住了 翻了好多资料 然后大师你这样就解决了  让我着实吐了一口老血。
发表于 2013-9-21 13:05:15 | 显示全部楼层
莫非大师就是传说的一灯大师???
发表于 2013-9-21 17:14:02 | 显示全部楼层
回复 5# jlet

一登上去    就被踢下来的那种
 楼主| 发表于 2013-9-26 13:23:17 | 显示全部楼层
多谢大师,很猛~!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-4-28 18:12 , Processed in 0.123370 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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