|
楼主 |
发表于 2009-4-26 00:10:52
|
显示全部楼层
Visual Basic 2008 速成版
学了这么多天,功能感觉很是强大,使用方法跟VB6.0 真的很不一样啊.在网上看了一下2005版本的,差不多,但我没学过2005版本的,
所以不知道有什么改动?在串口中断程序中直接将参数送显不行的,要用"委派"什么的.唉又得去买点书来看看了,不知道有没有2008版本
的?2005版本的又不知道是不是一样用?请老大们指点一下吧...谢谢 ~~~
功夫不负有心人,串口的2-3脚连接就能实现<发送-回显>的功能终于搞出来了.但还是对委派的使用还不是很了解,在这里有没有人能给我
解释一下呀??程序虽然是我写的,但也是这里搬一点那里搬一点,糊里糊涂就能实现了.有没有人帮我注释下每一行的功能的作用呀?
Imports System.IO
Imports System.Threading
Imports Microsoft.VisualBasic
Imports System.Windows.Forms
Imports System.IO.Ports
Imports System.Text
Public Class Form1
'Dim WithEvents RS232 As SerialPort
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
RS232.Open()
RS232.ReceivedBytesThreshold = 1
txtSend.Select()
End Sub
Private Sub RS232_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles RS232.DataReceived
If e.EventType <> SerialData.Chars Then Exit Sub
Dim inData As String = RS232.ReadExisting
DispalyText(inData)
End Sub
Private Sub DatSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DatSend.Click
RS232.WriteLine(txtSend.Text)
txtSend.Select()
End Sub
Delegate Sub SetTextCallback(ByVal InputString As String)
Private Sub DispalyText(ByVal comData As String)
If Me.txtReceive.InvokeRequired Then
Dim d As New SetTextCallback(AddressOf DispalyText)
Me.Invoke(d, New Object() {comData})
Else
Me.txtReceive.Text = comData
End If
End Sub
End Class |
|