mscomm控件

csdnquestion 2003-10-20 02:54:58
msdn中写到:
若设置 Sthreshold 属性为 0(缺省值),数据传输事件不会产生 OnComm 事件。若设置 Sthreshold 属性为 1,当传输缓冲区完全空时,MSComm 控件产生 OnComm 事件。
如果在传输缓冲区中的字符数小于 value,CommEvent 属性设置为 comEvSend,并产生 OnComm 事件。comEvSend 事件仅当字符数与 Sthreshold 交叉时被激活一次。例如,如果 Sthreshold 等于 5,仅当在输出队列中字符数从 5 降到 4 时,comEvSend 才发生。如果在输出队列中从没有比 Sthreshold 多的字符,comEvSend 事件将绝不会发生。


请问:
如果设置Sthreshold =5,我传输了3个字符会激活comEvSend 事件吗?如果传输8个呢?
我如何知道当前传输缓冲区中的字符数?
怎么样将传输缓冲区中的内容清空?用人为方法还是控件自动清空?
...全文
25 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
csdnquestion 2003-10-28
  • 打赏
  • 举报
回复
帮帮忙。
csdnquestion 2003-10-23
  • 打赏
  • 举报
回复
是简单还是难?怎么没有人回答?
csdnquestion 2003-10-21
  • 打赏
  • 举报
回复
我设置MSCOMM控件的Sthreshold属性为255。
在按钮1中代码如下:
Private Sub Command3_Click()
MSComm1.OutBufferCount = 0
Dim dat(1) As Byte
dat(0) = 12
dat(1) = 35
MSComm1.Output = dat
End Sub

每次我点击该按钮之后都会触发MSCOMM控件的OnComm(此时CommEvent属性为comEvSend)事件。

请问怎样的设置,什么时候触发OnComm事件?
yigu 2003-10-21
  • 打赏
  • 举报
回复
Mscomm.outputLen = 0 可以将传输缓冲区中的内容清空
outbuffercount可以查到当前传输缓冲区的字符数吧

我不确保我说的对,我也是刚学这个控件,你试试吧
CloudWater 2003-10-20
  • 打赏
  • 举报
回复
不会激活,传输8个会激活的,有个InputLength属性可以取得长度和高为零清空,以字节为单位,好象是.

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧