FComPortProperty : TStrings;
Der Bezeichner scheint mir unglücklich gewählt. Es wird nicht klar, was das darstellt und warum das nun ein TStrings ist.
Hier würde sich in der Tat ein
Record anbieten:
Delphi-Quellcode:
TComPortSettings = record
ComPort : string; // z.B. 'COM3'
BaudRate: Integer; // evtl. auch ein Aufzählungstyp
DataBits: Integer; // 7 oder 8
Parity: Char; // N=None, E=Even, O=Odd oder evtl. auch ein Aufzählungstyp
...
end;
TMB100 = class
...
public
property ComPortSettings : TComPortSettings read FComPortSettings write FComPortSettings;
property Farbe[Nr : integer] : TColor read GetColor write SetColor;
end;
Wahrscheinlich benützt du eine Komponente für die
COM-Ports.
Es kann somit ein "doppel-gemoppelt" Effekt eintreten, denn einerseits werden die Einstellungen für die serielle Schnittstelle von der Klasse TMB100 verwaltet andererseits gibt es eine
COM-Port-Komponente, die ebenfalls diese Einstellungen verwaltet.
Die perfekte Lösung wäre also die, dass die Klasse TMB100 die Einstellungen für die serielle Schnittstelle überhaupt nicht zu kennen braucht, sondern sie braucht nur zu wissen welche
COM-Port-Komponente sie benützen soll.
Stichwort:
Dependency Injection