Zitat von
tn249:
und jetzt möchte ich in einer function/procedure sowohl BLUE als auch CAR übergeben können, aber wie mache ich das?
Meinst du
Sets?
Delphi-Quellcode:
type
TColor = (
Blue = 1,
Red = 2,
Green = 3
);
TColors = set of TColor;
function ColorToStr(Color: TColor): string;
begin
case Color of
Blue : Result := 'Blue';
Red : Result := 'Red';
Green: Result := 'Green';
else
Result := '#' + IntToStr(Integer(Color));
end;
end;
function ColorsToStr(Colors: TColors): string;
var
Color: TColor;
begin
Result := '';
for Color := Low(TColor) to High(TColor) do
if (Color in Colors) then
begin
if Length(Result) > 0 then
Result := Result + ', ';
Result := Result + ColorToStr(Color);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(ColorsToStr([Blue, Red]));
end;
Oder zwei Parameter?
procedure Foo(Color: TColor; Kind: TKind);
Oder... untypisierte Parameter (allerdings müsste die Funktion/Prozedur dann irgendwie erfahren worum es sich handelt...)?