Hallo,
ich steh gerade auf dem Schlauch.
Ich hab eine Ini-Datei in der man Einstellungen für die serielle Schnittstelle machen kann.
Als Komponente nutz ich die VAComm von TMS Software.
Dort wird z. b. Stopbit als Aufzählung (Type) benutzt.
Nun möcht ich aber in der Ini-Datei eine ganz normale Eingabe wie z. B.:
Code:
[RS232]
Parity=EVEN
Stopbit=1
Leider muss ich aber dann die Eingaben "umwandeln", bevor ich die Komponente beschreiben kann.
Momentan mach ich das in einer Function und auf String basierend.
Delphi-Quellcode:
function TMaskForm.COM_Auswahl(Auswahl: TCOM_Auswahl; S: String): Variant;
begin
//
S := AnsiLowerCase(S);
case Auswahl of
COM_Databit: begin
If S = '4' then
Result := db4;
If S = '5' then
Result := db5;
If S = '6' then
Result := db6;
If S = '7' then
Result := db7;
If S = '8' then
Result := db8;
end;
COM_Stopbit: begin
If S = '1' then
Result := sb1;
If S = '1.5' then
Result := sb15;
If S = '2' then
Result := sb2;
end;
COM_Parity: begin
If S = 'none' then
Result := paNone;
If S = 'even' then
Result := paEven;
If S = 'mark' then
Result := paMark;
If S = 'odd' then
Result := paOdd;
If S = 'space' then
Result := paSpace;
end;
end;
end;
Nur gefällt mir das nicht wirklich!
Gibt es denn vielleicht eine andere Möglichkeit?
Was mir noch einfallen würde, das wäre die Auswahl als Index auszulesen um dann mit einem Cast auf die Auswahl die Komponente zu beschreiben.