Идёт загрузка страницы...

htp://aptem.net.ru





Delphi 1

Строковая нумерация

Просто объявите перечислимый тип, информацию о котором можно получить во время выполнения программы, и создайте класс, который использует данный тип в published-свойстве.

ClassInfo - метод класса, поэтому вы можете его использовать вместо экземпляра объекта. Но прежде вам необходимо заиметь этот класс, иначе никакого RTTI...


   
{$Z+}
type
TMyEnum = (one, two, three);
TEnumClass = Class( TComponent )
private
FEnum: TMYEnum;
published
property Enum: TMyEnum read FEnum;
End;

procedure TForm1.BtnTestClick(Sender: TObject);
Var
pOneName: PString;
PropInfo: PPropInfo;
begin
PropInfo := GetPropInfo( TEnumClass.ClassInfo, 'ENUM' );
pOneName := GetEnumName( PropInfo^.PropType, Ord(One));
If pOneName <> Nil Then
ShowMessage( pOneName^)
Else
ShowMessage('Nil!');
end;

Черная магия <G>!

- Peter Below [000761]