十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
'ListView1.SmallIcons = ImageList1.Object '把ImageList1图标列表控件绑定到 ListView1列表控件中来。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、雅安服务器托管、营销软件、网站建设、昆山网站维护、网站推广。
ListView1.ListItems.Clear '清空列表
ListView1.ColumnHeaders.Clear '清空列表头
ListView1.View = lvwReport '设置列表显示方式
ListView1.GridLines = True '显示网络线
ListView1.LabelEdit = lvwManual '禁止标签编辑
ListView1.FullRowSelect = True '选择整行
ListView1.ColumnHeaders.Add , , "ID", 500 '给列表中添加列名
ListView1.ColumnHeaders.Add , , "本地 IP", 1500
ListView1.ColumnHeaders.Add , , "本地端口", 1200
ListView1.ColumnHeaders.Add , , "协议", 550
ListView1.ColumnHeaders.Add , , "远程 IP", 1500
ListView1.ColumnHeaders.Add , , "远程端口", 900
ListView1.ColumnHeaders.Add , , "当前状态", 900
ListView1.ColumnHeaders.Add , , "连接时间", 900
用TreeView控件,具体方法我不记得了,你可以参照明日科技有限公司的VB1200例第一卷,里面有实例。注:这是树桩列表,不是什么折叠菜单
tcp协议是一个世界公开的协议,既然你在vb端能搞定如何进行数据通讯,1200就很简单了。
在1200侧你只需建立一个tcp的连接即可,连接类型为未指定,之后按照你自己的要求确定谁是客户机,谁是服务器就好了,具体的建立连接的步骤可以参照1200的文档,你可以在下面的文档的通讯一章找到如何建立TCP连接的过程
西门子 S7-1200 PLC Smart Plus 技术参考Version 1.8
这是我的简单串口代码:
Dim a As Integer
Dim b As Variant
Private Sub u_Click()
Text1.Text = "请先设置波特率与COM口!!!"
End Sub
Private Sub Cbo1_Click()
On Error GoTo blak '打开串口发生错误,提示信息
If MSComm1.PortOpen = True And a = 1 Then
MSComm1.PortOpen = False '必须先关闭端口,再对端口进行设置
MSComm1.CommPort = cbo1.ListIndex + 1 '端口号从0开始,必须加1
Else '有必要
MSComm1.CommPort = cbo1.ListIndex + 1
End If '注释的必须有,为第二次切换做准备,否则第二次换COM口会出问题
Exit Sub
blak:
MsgBox "串口不存在或被占用!", vbOKOnly, "提示信息" '必须是这种格式
End Sub
Private Sub Cbo2_Click() '单击事件,不是change事件
MSComm1.Settings = 1200 * 2 ^ cbo2.ListIndex "n,8,1" '设置端口的波特率,连接符前后必须空一格
End Sub
Private Sub cmd1_Click()
a = a + 1
If a = 1 Then
cmd1.Caption = "关闭串口"
cbo1.Enabled = False
MSComm1.PortOpen = True '打开串口
ElseIf a = 2 Then
cmd1.Caption = "打开串口"
cbo1.Enabled = True
MSComm1.PortOpen = False '关闭串口
a = 0
End If
End Sub
Private Sub cmd2_Click()
Text1.Text = "" '清空接收区
Text2.SetFocus
End Sub
Private Sub cmd3_Click()
Text2.Text = "" '清空发送区
Text2.SetFocus
End Sub
Private Sub cmd4_Click()
Dim d As Integer
Dim e(0) As Byte 'outbyte 输出字符
d = Val(Text2.Text)
e(0) = CByte(d)
MSComm1.OutBufferCount = 0 '清除发送缓冲区
MSComm1.Output = e '此命令执行一次发送8字节
End Sub
Private Sub Form_Load()
cbo1.ListIndex = 0
cbo2.ListIndex = 0
MSComm1.OutBufferCount = 0
MSComm1.InBufferCount = 0
End Sub
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent '返回最近的通信过程
Case comEvReceive '接受的数据
c: b = MSComm1.Input
If Option1.Value = True Then
Text3.Text = Text1.Text Hex(b(0)) '首次不行,因为有字符
Text1.Text = Text3.Text " " '转换一下
ElseIf Option2.Value = True Then
Text1.Text = Text1.Text b ""
End If
If MSComm1.InBufferCount 0 Then 'mscomm1.InBufferCount是缓冲区的数据数
GoTo c
End If
End Select
End Sub
Private Sub Option1_Click()
MSComm1.InputMode = comInputModeBinary '接收方式,十六进制
End Sub
Private Sub Option2_Click()
MSComm1.InputMode = comInputModeText '接收方式,字符格式
End Sub
Private Sub Text1_Change()
Text1.SelStart = Len(Text1.Text)
End Sub