![](/img/trans.png)
[英]Visual Studio 2017 VB.Net Office 2010 Compatibility Issues
[英]VB.Net Visual Studio 2017
团队.. 我已经阅读了一些帖子,仍然需要指导。 我有一个称重程序 VB.2017,我是从零开始编写的,而不是移植 VB6 版本,而是在手持扫描仪问题上绊倒了。 (VB.Net 不支持 OnComm)
此代码将读取输入(使用串行手持条码扫描器打印的条码 - 摩托罗拉符号),但我试图在按下条码扫描器按钮时执行 SUB。 它只是读取条形码并填充文本框。
确实捕获条形码的工作代码(在定义扫描仪属性并打开 com 端口之后。但是当按下扫描仪上的按钮时无法计算出如何执行 Sub。
MyCOMPortScanner.Open()
_continue = True
Do
Dim Incoming As String = MyCOMPortScanner.ReadLine()
If Incoming Is Nothing Then
Exit Do
Else
returnStr = Incoming
End If
Loop
Catch ex As IOException
Showmessage(ex.Message & " ComOpen IO")
Catch ex As Exception
Showmessage(ex.Message & " ComOpen EX")
除非我在文本框中有光标并且只有键盘输入而不是扫描仪,否则代码不起作用。 我将 KeyPreview 设置为 true。
我已经尝试过 KeyPress 和 KeyDown。
Private Sub Weighing_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
Private Sub Weighing_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
同样,上述 2 项工作但仅适用于键盘,并且无法识别条码扫描器的触发按下。
对不起团队.. 仍然不知所措,因为我根本不明白.. 我尝试了很多不同的方法来定义事件,例如有效的 keydown。 但还是不知所措抱歉。
Private Sub Weighing_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
End Sub
'Public Event KeyDown As KeyEventHandler
'Public Event GetSerialData As KeyEventHandler
'Public Event GetSerialData As GetSerialDataEventHandler
Public Event GetSerialData(sender As Object, e As GetSerialDataEventHandler)
Private Sub GetSerialData(ByVal sender As System.Object, ByVal e As IO.Ports.SerialDataReceivedEventArgs) Handles MyBase.GetSerial
End Sub
'Private Sub GetSerial(ByVal sender As System.Object, ByVal e As System.Windows.Forms.GetSerialEventArgs) Handles Me.GetSerial
'End Sub
Public Sub GetSerial()
End Sub
请帮忙,因为我读了这么多帖子却一无所获。 我的代码超过 1k 行,这是唯一未解决的问题
我认为捕获文本框更改事件足以满足您的需求。
Private Sub TextBox_TextChanged(sender As Object, e As EventArgs) Handles TextBox.TextChanged
Try
' Do something
Catch
' Catch something
End Try
End Sub
OMG..抱歉浪费大家的时间和亚历山德罗提示。 当我定义端口并进行初始读取时,我只是使用不同的 PortName (MyCOMPortScanner) 而不是 SerialPort1。 现在,当我按下扫描仪上的触发器时,它现在会输入代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.