VB编程中怎样利用程序实现将label1的caption属性粘贴到剪贴板中
利用以下程序调试了很久,总是不对,并非专业人士,所以不是很懂。PrivateSubCommand2_Click()Clipboard.ClearClipboard.Set...
利用以下程序调试了很久,总是不对,并非专业人士,所以不是很懂。
Private Sub Command2_Click()
Clipboard.Clear
Clipboard.SetText Label1.Caption
Shell "notepad", 1
SendKeys "^" + "V"
End Sub 展开
Private Sub Command2_Click()
Clipboard.Clear
Clipboard.SetText Label1.Caption
Shell "notepad", 1
SendKeys "^" + "V"
End Sub 展开
展开全部
因为Shell是异步运行的,所谓异步运行,就是说它启动后是不等待程序是否运行完毕就立刻执行下一条语句的,这样的话当下一条语句(在这里就是Sendkeys)运行的时候,记事本还没有启动完毕呢,这样的话发送粘贴按键命令就无效了,应该延迟一段时间再发送,比如:
Private Sub Command2_Click()
Clipboard.Clear
Clipboard.SetText Label1.Caption
Shell "notepad", vbNormalFocus
Timer1.Interval = 2000 '延迟2秒
Timer1.Enabled = True '启动定时器
End Sub
Private Sub Timer1_Timer() '窗体上要添加一个Timer1控件
SendKeys "^v", True '粘贴
Timer1.Enabled = False '关闭定时器
End Sub
更多追问追答
追问
已经用了上述程序,运行之后状况和之前一样,先是弹出一个空白剪贴板,然后显示实时错误70,调试之后
SendKeys "^v", True '粘贴
这一句变成黄色了,怎么办
追答
我这里测试是没问题的
实时错误70是拒绝的权限。我的系统是winxp,win7没测试。或者把2000改为3000或4000试试。
刚刚网上查了一下,说这是win7的问题,网上有解决办法,你自己找一下。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询