Du nutzt auch 2 verschiedenen TBaudrate. Wie gesagt darfst du das nur einmal definieren.
Deine Klasse könnte so aussehen:
Delphi-Quellcode:
unit K6NSerial;
interface
type TK6NSerial =
class
public type TBaudrate = (
br_000050, br_000110, br_000150, br_000300, br_000600, br_001200,
br_002400, br_004800, br_009600, br_014400, br_019200, br_038400,
br_056000, br_057600, br_115200, br_128000, br_230400, br_256000,
br_460800, br_921600
);
public
Baudrate: TBaudrate;
end;
implementation
// ...
end.
Nun hast du TBaudrate in der Klasse definiert. Ich finde das sinnvoll, da es funktional zur Klasse gehört.
Von außen musst du nun exakt diese Definition verwenden.
Das kann so aussehen:
Delphi-Quellcode:
uses K6NSerial;
procedure TForm1.Button1Click(Sender: TObject);
var
M6NSerial1: TK6NSerial;
MyBR: TK6NSerial.TBaudrate;
begin
M6NSerial1 := TK6NSerial.Create;
// ...
MyBR := br_000110;
M6NSerial1.Baudrate := MyBR;
// ...
end;
Dann hast du TBaudrate ein einziges mal definiert und verwendet exakt diese Definition überall.
Grüße, Matze