vb6中使用 SendKeys "^v" 的问题
我目的是使用一个全局快捷键实现同时复制一个图片和一串文字。全局快捷键已经做好,并设置为F1。PublicSubHideDone()Clipboard.ClearClipb...
我目的是使用一个全局快捷键实现同时复制一个图片和一串文字。
全局快捷键已经做好,并设置为F1。
Public Sub HideDone()
Clipboard.Clear
Clipboard.SetData LoadPicture("e:\Users\Administrator\Desktop\新建文件夹 (3)\2.jpg")
SendKeys "^v"
Clipboard.Clear
Clipboard.SetText "核动力飞机会实现吗?"
SendKeys "^v"
End Sub
快捷键调用的过程为以上代码(以上都放在模块中了我),打开qq聊天窗口,使用F1:
第一次按F1出现: "核动力飞机会实现吗?核动力飞机会实现吗?",没有出现图片,而是两次文字。
试着再按一次F1:“工程2已经停止工作”,程序死掉。
想不明白,请指教。
谢谢
发现只用一个剪贴板,完全没问题,单图片或单文字都可以。
如果使用两个剪贴板,就不行,两串文字不行,图片+文字更不行。
我感觉是问题出在剪贴板上,两次剪贴板设置太接近了,应该有什么方法让第一次粘贴完毕后,再设置第二次剪贴板。
试着加了sleep 5000,也不管用。 展开
全局快捷键已经做好,并设置为F1。
Public Sub HideDone()
Clipboard.Clear
Clipboard.SetData LoadPicture("e:\Users\Administrator\Desktop\新建文件夹 (3)\2.jpg")
SendKeys "^v"
Clipboard.Clear
Clipboard.SetText "核动力飞机会实现吗?"
SendKeys "^v"
End Sub
快捷键调用的过程为以上代码(以上都放在模块中了我),打开qq聊天窗口,使用F1:
第一次按F1出现: "核动力飞机会实现吗?核动力飞机会实现吗?",没有出现图片,而是两次文字。
试着再按一次F1:“工程2已经停止工作”,程序死掉。
想不明白,请指教。
谢谢
发现只用一个剪贴板,完全没问题,单图片或单文字都可以。
如果使用两个剪贴板,就不行,两串文字不行,图片+文字更不行。
我感觉是问题出在剪贴板上,两次剪贴板设置太接近了,应该有什么方法让第一次粘贴完毕后,再设置第二次剪贴板。
试着加了sleep 5000,也不管用。 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
1个回答
展开全部
Clipboard.Clear
Clipboard.SetData LoadPicture("C:\1111.BMP")
SendKeys "^v"
DoEvents
Clipboard.Clear
Clipboard.SetText "核动力飞机会实现吗?"
SendKeys "^v"
Clipboard.SetData LoadPicture("C:\1111.BMP")
SendKeys "^v"
DoEvents
Clipboard.Clear
Clipboard.SetText "核动力飞机会实现吗?"
SendKeys "^v"
追问
果真好用呀,就差一句DoEvents呀,能解释一下原理吗?
另外,发现如果连续快速使用F1全局快捷键的话,很容易导致程序死掉。暂时加了一个sleep解决。
发现用DoEvents还有一个问题,就是如果连续按F1快的话,会先出两个图片,再出2串文本,有没有办法判断,直到第一个sendkey结束后,才去执行下面的语句?
sendmessage可以吗?
如果按您的代码,比较快速的连按两次F1,则会先出两个图片,再出两串文本(要求是 图片-文本-图片-文本),貌似没等第一次的文本出来,就直接出第二次的图片了,然后才是第一次的文本、第二次的文本。求解决
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询