用vb编写了一个模拟按键的小程序,模拟的是a,为什么他根本停不下来,一直在输入a?

PrivateSubCommand1_Click()b=b+1Ifb=1Thena=WM_KEYDOWNCallPostMessage(Text1.hwnd,a,Key_... Private Sub Command1_Click()
b = b + 1
If b = 1 Then
a = WM_KEYDOWN
Call PostMessage(Text1.hwnd, a, Key_A, 0&)
a = WM_KEYUP
Call PostMessage(Text1.hwnd, a, Key_A, 0&)
b = 0
End If
End Sub

Private Sub Command2_Click()
End
End Sub
这是输入的程序
展开
 我来答
yfcp
推荐于2016-05-21 · 知道合伙人软件行家
yfcp
知道合伙人软件行家
采纳数:1748 获赞数:5543
有多年网站建设相关工作经验。熟悉ASP、ASP.net、VB、JavaScript、HTML等语言和CSS、Ajax等相关技术。

向TA提问 私信TA
展开全部

肯定是代码有问题的,这个需要看你写的代码才能知道是什么原因停不下来。

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal Scan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Const KEYEVENTF_KEYUP = &H2 '释放按键常数
Private Sub Command1_Click()'模拟输入键盘a例子
Text1.SetFocus
Call keybd_event(65, 0, 0, 0) '按下
Call keybd_event(65, 0, KEYEVENTF_KEYUP, 0) '释放
End Sub

 

你的代码在外部定义一个b
Dim b As Long '================
Private Sub Command1_Click()
    b = b + 1
    If b = 1 Then
        a = WM_KEYDOWN
        Call PostMessage(Text1.hwnd, a, Key_A, 0&)
        a = WM_KEYUP
        Call PostMessage(Text1.hwnd, a, Key_A, 0&)
    End If
     'b = 0 这个不要了,否则b下次还是从0开始=============
End Sub
意法半导体(中国)投资有限公司
2023-06-12 广告
单片机汇编程序是用汇编语言编写的程序,用于控制单片机的操作。汇编语言是一种比较接近计算机硬件语言的低级语言,相对于高级语言来说更容易理解和实现。下面是单片机汇编程序的基本步骤:1. 将代码和数据汇编到规定的段中。2. 在存储器中用未初始化的... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
百度网友b870591b
2014-11-01 · 超过14用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:23.6万
展开全部
代码呢,是不是死循环了?
把b =0注释掉;
更多追问追答
追问
不行啊,注释掉b=0还是停不下来
追答
Call PostMessage(Text1.hwnd, a, Key_A, 0&)这方法是什么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式