Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Wie kann ich einen Aufzählungstyp einer Komponente zuwei

  Alt 29. Dez 2009, 18:54
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
  Mit Zitat antworten Zitat