Вниз
Скачать: CL | DM;

Есть ли функция "имя"ToString ?   Найти похожие ветки 

← →
Label2   (2007-01-26 01:30) [0]

type
 TMyData = (trStart, trFinish);

var
 MyData1 : TMyData;
begin
 MyData1 := trFinish;

Label1.Caption := "имя"ToString(MyData1);


Вот, что нибудь такое возможно?


← →
Джо ©   (2007-01-26 01:41) [1]

> [0] Label2   (26.01.07 01:30)
> Вот, что нибудь такое возможно?

В данном конкретном случае — да. Нужно использовать RTTI. Вот так:

uses ... TypInfo,...;

var
 MyData1 : TMyData;
begin
 MyData1 := trFinish;
 Caption := GetEnumName(TypeInfo(TMyData),Ord(MyData1))
end;

Важно, чтобы тип TMyData не был объявлен локально в методе/процедуре.


← →
Германн ©   (2007-01-26 01:48) [2]

Тут есть ещё один простой вопрос. А зачем это нужно?
Имхо, чаще всего в подобном случае проще обойтись добавлением константного массива со строковыми именами.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
8-1150349926
Vasiliy
2006-06-15 09:38
2007.02.11
Управление выходом видеокарты ???


15-1169120417
Gorlum
2007-01-18 14:40
2007.02.11
Список богов


9-1142376183
Такой
2006-03-15 01:43
2007.02.11
Что задаёт ротация в smd-файлах?


2-1169302054
TIF
2007-01-20 17:07
2007.02.11
Задвинуть MainMenu


3-1163606293
AlexWlad
2006-11-15 18:58
2007.02.11
Невозврат значения из Stored Procedure




   Наверх