Und das andere Extrembeispiel:
Man lässt die Klasse zwei mal erzeugen, dann greifen die Methoden beider Instanzen auf die Form1-Variable zu.
- Entweder die erste Instanz greift ständig auf die falschen Komponenten drauf su, nämlich auf die der zweiten Instanz, welche zufällig in der Variable verlinkt ist, weil ihr Zeiger als Letztes dort reingeschrieben wurde, anstatt auf ihre Eigenen (Self).
- Oder es knallt, weil man beim dynamischen Erzeugen diese Variable nicht verwendet/gesetzt hat. (siehe DeddyH)
Gibt der Leerrer denn noch Unterricht?
Dieses TComport hat noch andere Events, bzw. eine Weitere Klasse, welche einem komplette Strings liefern kann.
z.B. beginnend bei einem definierten Startzeichen, aber vorallem endend mit einem bestimmten Stopzeichen, ohne daß man das selber machen behandeln muß.
OnRxChar wird nicht unbedingt am ende der Zeile/Message ausgelöst, womit die empfangenen Zeichen noch unvollständig seie können.
Delphi-Quellcode:
ComPort1.ReadStr(Ausgabe, Count);
Memo1.Text := Memo1.Text + Ausgabe;