COM 大家好~~~又是我来问了
不知道为什么,这段时间都没有心情去弄那个软件了,一是自己水平有限,不是做这行的,二是最近在忙其他的事情.直到昨天把硬件都弄好了,样板发出去了.有点时间了,经理又说叫我弄个软件出来~~~~~~~哎,本来是搞硬件,你说叫我弄软件??我也只好边学边弄,所以还请大家帮帮忙~~~~~~~~~~~~~~~先谢谢大家了!!!!!!!!!!!!
我的问题是VB中怎么选择COM口???MSComm1.CommPort = 1 (像这1是COM1,我的要求就是在选择COMBO的下拉可以选择到30端口,其实好像是100都可以)
对于你们来说是很简单的,但是我弄的选择怎么无效呢
我看网上的代码是MSComm1.CommPort = Val(Mid(Combo1.Text, 4, 1))
但是我的COMBO1里面又COM1---COM30了,就是选择哪一个都有效,奇怪了~~~~~
本来不是应该是COM1(MSComm1.CommPort = 1 )才有效的吗~~~~~~~~~
对于代码~~~~~~~~~~~~~~~我好晕!!!!!!!!!!!!!!!!!!!!!!!
[解决办法]
VB+WINXP支持到COM口号16,但COM口号必须是实际存在的物理口号.
http://www.vbgood.com/viewthread.php?tid=83700
[解决办法]
CommPort 只能设 1-16,但是你的函数只取一个字符,选 COM30 其实是设了 3,没有用过超过 9 的,所以都成功。
- VB code
MSComm1.PortOpen = FalseMSComm1.CommPort = Val(Mid(Combo1.Text, 4))MSComm1.PortOpen = True
[解决办法]
Val(Mid(Combo1.Text, 4))是从Combo1.Text的第四个字符一直取到结尾,那就要看你的Combo1.Text是什么了.如果是COM30那就是30,和Val(Mid(Combo1.Text, 4,2))一样.
2))
[解决办法]
- VB code
Private Sub Form_Load() Dim i As Integer For i = 1 To 16 Combo1.AddItem "COM" & Format(i) Next Combo1.Text = Combo1.List(0)End SubPrivate Sub Combo1_Click() MSComm1.CommPort = Mid(Combo1.Text, 4)End Sub
[解决办法]
在 Mid 函数上 F1 看帮助,都不好意思直接贴 MSDN 内容
[解决办法]
MSComm1.PortOpen = False
MSComm1.CommPort = Val(Right(Combo1.Text, 2))
MSComm1.PortOpen = True