Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.
ich stehe irgendwie auf dem Schlauch. Ich möchte einen aus einem Textfeld ausgelesenen Wert an einen Programmteil übergeben, der einen Comport initialisiert. Der Wert soll übergeben werden, wenn eine Schaltfläche geklickt wird.
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim EinzelPort As String
For Each EinzelPort In My.Computer.Ports.SerialPortNames
Next EinzelPort
With SerialPort1
If Not .IsOpen Then
Try
.PortName = strportins
.BaudRate = 19200
.DataBits = 8
.Parity = Parity.None
.StopBits = StopBits.One
.WriteTimeout = -1
.ReadTimeout = -1
.Open()
Catch ex As Exception
MsgBox("Bitte das Funkmodul an den PC anschliessen und COM-Port eingeben!")
'Me.Close()
Exit Sub
End Try
End If
End With
End Sub
Das ist zum initialisieren und das hier macht der Knopp beim Klick:
Private Sub btnPort_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPort.Click
Dim intPort As Integer
Dim strPort As String
strPort = txtPort.Text
If IsNumeric(strPort) Then
intPort = CInt(strPort)
strPortins = "COM" & intPort
Else
MsgBox("Port Ungültig!", vbOKOnly, "Achtung")
End If
End Sub
Nur wie bekomme ich den strPortins in die andere Sub?
ich vermute mal du meintest "ich bekomm den wert nicht an die stelle, wo ich die ports durchgehe"
wenn du das in ne eigene sub auslagerst kannst du den port einfach übergeben:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
openPorts("DeinDefaultPort")
End Sub
Private Sub btnPort_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPort.Click
Dim intPort As Integer
Dim strPort As String
strPort = txtPort.Text
If IsNumeric(strPort) Then
intPort = CInt(strPort)
strPortins = "COM" & intPort
openPorts(strPortins)
Else
MsgBox("Port Ungültig!", vbOKOnly, "Achtung")
End If
End Sub
Private Sub openPorts(ByVal strportins As String)
Dim EinzelPort As String
For Each EinzelPort In My.Computer.Ports.SerialPortNames
Next EinzelPort
With SerialPort1
If Not .IsOpen Then
Try
.PortName = strportins
.BaudRate = 19200
.DataBits = 8
.Parity = Parity.None
.StopBits = StopBits.One
.WriteTimeout = -1
.ReadTimeout = -1
.Open()
Catch ex As Exception
MsgBox("Bitte das Funkmodul an den PC anschliessen und COM-Port eingeben!")
'Me.Close()
Exit Sub
End Try
End If
End With
End Sub
@KillerBird, ja ne. also schon. im prinzip aber ich vermute mal, das textfeld bekommt ne user eingabe. und die ist beim form onload idR noch nicht gemacht