...get names of enumerated values?

Author: Mike Shkolnik
Homepage: http://www.scalabium.com

Category: VCL

// For example, if you have some enum type

// Als Beispiel, wenn dieser Aufzählungstyp vorhanden ist

{....}

type
  
TYourEnumType = (One, Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten);

{....}

{
 And you want in run-time to get a string with same value for each of
 them (for example, fill the Listbox items with enum values), then you
 can use the next procedure:
}

{
 Und Sie möchten zur Laufzeit nun Items einer Listbox mit den String-
 Namen der Aufzählung füllen.
}

uses TypInfo;

procedure TForm1.Button1Click(Sender: TObject);
var
  
i: Integer;
begin
  for 
i := Ord(Low(TYourEnumType)) to Ord(High(TYourEnumType)) do
    
ListBox1.Items.Add(GetEnumName(TypeInfo(TYourEnumType), i));
end;

 

printed from
www.swissdelphicenter.ch
developers knowledge base