Forum: PC-Programmierung SerialPort Visual Basic


von Marco G. (grmg2010)


Lesenswert?

Moin,

ich habe mir ein Programm mit Visual Basic geschrieben, welches die 
eingehenden Daten "sortiert", das heißt es werden Codezeichen 
übertragen, die als Indikator dienen sollen (Ähnlich einem Header). Je 
nach Zeichen soll dann der String in ein anderes Label/Textbox 
geschrieben werden.

Wie kann ich das am einfachsten realisieren?

Gruß

von Peter II (Gast)


Lesenswert?

Marco G. schrieb:
> Wie kann ich das am einfachsten realisieren?

ich dachte das hast du schon?

> ich habe mir ein Programm mit Visual Basic geschrieben


wo ist jetzt dein Problem?

von Georg (Gast)


Lesenswert?

mit einem switch-case-Block?
Oder: wenn die Textboxes in einem Array sind und deine Indikatorzeichen 
aufeinanderfolgende ASCII-Zeichen sind auch sowas:
1
textbox( Asc(indikator) - 28).text = string

von Marco G. (grmg2010)


Lesenswert?

Peter II schrieb:
> ich dachte das hast du schon?

Das Programm sieht im Moment so aus, dass ich alles in eine RichTextbox 
schreibe, ich würde das jetzt aber gerne aufsplitten in mehrere 
Bereiche/Textboxen

Georg schrieb:
> textbox( Asc(indikator) - 28).text = string

Ist dafür nicht Voraussetzung, dass ich weiß, wie lang der String ist? 
In meinem Fall weiß ich das jedoch nicht genau.

Außerdem werden vom Sender mehrere eigentlich unabhängige Strings 
gesendet.

von Alex R. (itaxel)


Lesenswert?

Hallo Marco,

wie sehen denn die Daten genau aus die du empfängst?

Kannst du nicht jeden String der reinkommt sofort auswerten und 
dementsprechend in ein Lable/Textbox verschieben?

Sind denn von dir bestimmte Anzhal an Labels vorhanden oder müssen die 
je nach länge des Strings automatisch neu angelegt werden?

Würde dir eine Tabelle (GridView) vielleicht was bringen?

Gruß Alex

von ge-nka (Gast)


Lesenswert?

Header+DatenString haben einen Endzeichen?
Ist im Header die Stringlänge angegeben?

Wenn beide nicht, hast du zwei Möglichkeiten:

immer auf einen neuen Header warten dann kann der letzte Datenstring aus 
der Richtextbox/Puffer abgeholt werden.

eine Weile(Timeout) auf einen neuen Header warten dann kann der letzte 
Datenstring aus der Richtextbox/Puffer abgeholt werden.

Das mit dem sortieren wie oben beschrieben mit
select Header case x:, case y ,
oder mit
If Header=xx, elseif Header=yy
oder mit
while Header=x, while Header=y
je nach dem was dir besser am Herzen liegt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.