以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]串口DataReceived事件  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=196031)

--  作者:yzh666
--  发布时间:2025/3/24 14:52:00
--  [求助]串口DataReceived事件
Select Case e.Port.PortName
    Case "COM1"
        If Forms("A").Opened Then
            Forms("A").Controls("开始").PerformClick()
            Forms("B").Controls("no").Value = e.Port.ReadExisting()
        End If 
    Case "COM2"
        Forms("B").Controls("no").Text = e.Port.ReadExisting()
End Select

置入以上代码,执行无效。在A窗口打开的状态下,并未正确执行按钮点击。


--  作者:yzh666
--  发布时间:2025/3/24 15:01:00
--  
我本意是想在COM1接收到数据时,执行一个函数,函数包含了对某一张表的行数据的新增,但是发现函数在此处也无法执行
--  作者:有点蓝
--  发布时间:2025/3/24 15:03:00
--  
调试

    Case "COM1"
        If Forms("A").Opened Then
msgbox(1)
            Forms("A").Controls("开始").PerformClick()
msgbox(2)
            Forms("B").Controls("no").Value = e.Port.ReadExisting()
        End If 

然后"开始"按钮点击事件第一行也加上msgbox看看能不能弹出

--  作者:yzh666
--  发布时间:2025/3/24 15:06:00
--  
调试msgbox没有弹出
--  作者:有点蓝
--  发布时间:2025/3/24 15:09:00
--  
所有msgbox没有弹出?说明窗口没有打开,或者是没有接收到串口数据
--  作者:yzh666
--  发布时间:2025/3/24 15:16:00
--  
但是窗口A我已经打开,且A窗口上的textbox被置入了串口读到的数据
--  作者:有点蓝
--  发布时间:2025/3/24 15:31:00
--  
这不可能。可能是其它地方有接收的代码
--  作者:yzh666
--  发布时间:2025/3/24 16:03:00
--  
我新创建一个项目试试
--  作者:有点蓝
--  发布时间:2025/3/24 16:04:00
--  
关闭退出项目,删除项目所在的文件夹里的bin目录,然后重启项目试试。
--  作者:yzh666
--  发布时间:2025/3/24 16:05:00
--  
新建一个也不行