anoniem Geplaatst: 9 februari 2002 Delen Geplaatst: 9 februari 2002 Hoi allemaal Het gaat allemaal nog niet zoals ik wil. Ik wil de settings van MSCOMM32.OCX zelf in kunnen stellen. Nu heb ik een test programmaatje gemaakt met Form1, en daarin een frame met 4 Option Buttons. En op de Form heb ik verder nog Label1 en de MSCOMM neergezet. Label 1 is alleen om te controleren of de BaudRate% inderdaad wijzigt. De code bij het Form is: [code:1:8d11dc8357] Option Explicit Private Sub Form_Load() Option1(3).Value = True 'Dit bepaald de index van opstarten van de opt button op 3 Call DirectLoad(frm:=Me) End Sub Private Sub Option1_Click(index As Integer) Call OptButTest(Me, index) End Sub [/code:1:8d11dc8357] De code in de module is: [code:1:8d11dc8357] Option Explicit Public BaudRate As Integer Sub OptButTest(frm As Form, index As Integer) Select Case index Case 1 MsgBox "Button 1" BaudRate = 300 frm.Label1.Caption = BaudRate Case 2 MsgBox "Button 2" BaudRate = 1200 frm.Label1.Caption = BaudRate Case 3 MsgBox "Button 3" BaudRate = 2400 frm.Label1.Caption = BaudRate Case 4 MsgBox "Button 4" BaudRate = 4800 frm.Label1.Caption = BaudRate End Select End Sub Public Sub DirectLoad(frm As Form) With Form1.MSComm1 .RThreshold = 1 .CommPort = 1 .Settings = "BaudRate,n,8,1" ' Dit werkt dus niet .SThreshold = 1 .PortOpen = True ' Leave all other settings as default values End With End Sub Sub main() Form1.Show End Sub [/code:1:8d11dc8357] Maar wat dus niet kan is de regel: [code:1:8d11dc8357] [b:8d11dc8357].Settings = "BaudRate,n,8,1"[/b:8d11dc8357] [/code:1:8d11dc8357] Hoe kan ik nou bij de settings de BaudRate aanpassen met de optionbuttons, wie weet daar een oplossing voor ? groetjes, Yvonne In de MSDN Library kan ik hier geen oplossing voor vinden. Daar vullen zij alles ook standaard in. Quote Link naar reactie
anoniem Geplaatst: 9 februari 2002 Auteur Delen Geplaatst: 9 februari 2002 Hoi, De variable Baudrate moet van het type string zijn. Ik heb je code wat aangepast.. [code:1:9fd88bd031] Option Explicit -->Public BaudRate As string<-- Sub OptButTest(frm As Form, index As Integer) Select Case index Case 1 MsgBox "Button 1" -->BaudRate = "300"<-- frm.Label1.Caption = BaudRate Case 2 MsgBox "Button 2" BaudRate = "1200" frm.Label1.Caption = BaudRate Case 3 MsgBox "Button 3" BaudRate = "2400" frm.Label1.Caption = BaudRate Case 4 MsgBox "Button 4" BaudRate = "4800" frm.Label1.Caption = BaudRate End Select End Sub Public Sub DirectLoad(frm As Form) With Form1.MSComm1 .RThreshold = 1 .CommPort = 1 -->.Settings = Baudrate + ",n,8,1"<-- .SThreshold = 1 .PortOpen = True ' Leave all other settings as default values End With End Sub [/code:1:9fd88bd031] greetz, Ruud [ Dit Bericht is bewerkt door: Daffy Disk op 2002-02-09 19:34 ] Quote Link naar reactie
anoniem Geplaatst: 9 februari 2002 Auteur Delen Geplaatst: 9 februari 2002 Hoi Wat ben jij snel zeg. Ik zit hier mee te rommelen, maar ik weet niet of ik daar mee verder had gekomen. [code:1:228556457b]Settings = (Baudrate + "," + "n" + "," + " 8" + "," + "1") [/code:1:228556457b] Maar bedankt, ik ga het snel bekijken. Er zal vanavond niet veel geprogrammeerd worden, want schaatsen begint zo. groetjes, Yvonne Quote Link naar reactie
anoniem Geplaatst: 9 februari 2002 Auteur Delen Geplaatst: 9 februari 2002 Hoi Die regel code van mij is dus nog zo gek niet. Maar zonder [code:1:21c26ccb27] Public BaudRate as string [/code:1:21c26ccb27] had het niet gewerkt. Zat ik er een keer niet zo gek naast. Maar programmeren is ook niet echt makkelijk groetjes, Yvonne Quote Link naar reactie
anoniem Geplaatst: 10 februari 2002 Auteur Delen Geplaatst: 10 februari 2002 Verander de "+" eens in "&". utt zonder de ". Alles wat achter de .Setting komt moet een string zijn... Het volgende moet werken want dat gebruik ik ook: [code:1:48c541495c]Dim Baudrate as string Baudrate = "9600" mscomm1.settings = Baudrate & ",n,8,1"[/code:1:48c541495c] Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen