读书人

请问sendkeys的有关问题

发布时间: 2012-02-29 16:44:10 作者: rapoo

请教sendkeys的问题
别人写了个函数,用sendkeys来对一个软件的菜单进行操作,由于考虑不够周全,留下了些问题要我解决。

比如说
Shell( "notepad.exe ", 1)
SendKeys "%F ", True
SendKeys "A ", True
SendKeys "%T ", True
SendKeys ....等等

由于操作比较多,运行时间比较长。
如果在程序运行时激活了其他窗口,失去notepad焦点的话,SendKeys依然在执行,不过对象变成了当前激活的窗口而不是notepad。
怎么解决这个问题?或者有没有其他更好的方法实现这个功能?

[解决办法]
sendmessage 应该可以吧 不过我不清楚 那些参数怎么用了
[解决办法]
可以使用api一直让记事本在最前端,然后在使用sendkeys发送按键命令或使用sendmessage发送按键消息~
[解决办法]
..迷糊.
用SHELL时返回一个PID,用FINDWINDW查找所有窗口当PID与SHELL的相同时返回HWND,用SENDMESSAGE发送全部文本内容到HWND即可。
[解决办法]
打开窗口的时候获得该窗口句柄,然后用sendmessage发送消息就不会有问题了
[解决办法]
获得需要操作窗口的句柄,然后操作

读书人网 >VB

热点推荐