Einzelnen Beitrag anzeigen

Schlingel

Registriert seit: 15. Feb 2003
Ort: Österreich
67 Beiträge
 
Delphi XE2 Professional
 
#1

Problem mit Enumeration

  Alt 6. Feb 2016, 12:06
Hallo

Ich habe folgendes Problem und stehe irgendwie auf dem Schlauch...
Delphi-Quellcode:
type
  THanID = (StaPre = 0, StaEmp, StaUns, SpaSte, StaBadSte, StaSheCri, StaSheExp, StaFreRel, StaOnHold);

type
  TForm00 = class(TForm)
    Button1: TButton;
    procedure FormShow(Sender: TObject);
    function Get_a_Bit(const aValue: Cardinal; const Bit: Byte): Boolean;

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form00: TForm00;

implementation

{$R *.dfm}

procedure TForm00.FormShow(Sender: TObject);
begin
  Button1.Enabled := Get_a_Bit(Random(255), 1);// funktioniert ist aber in einem umfangreichen Code schwer zu lesen

  Button1.Enabled := Get_a_Bit(Random(255), StaEmp); // <--- Enum funktioniert nicht
end;

// get if a particular bit is 1
function TForm00.Get_a_Bit(const aValue: Cardinal; const Bit: Byte): Boolean;
begin
  Result := (aValue and (1 shl Bit)) <> 0;
end;
Da ich derzeit einen funktionerenden Code etwas verschönern will, möchte ich die Version mit Enum anwenden.
Vielleicht hat jemand einen Tipp für mich.

Grüße
  Mit Zitat antworten Zitat