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

Количество элементов   Найти похожие ветки 

← →
harisma   (2007-10-16 17:04) [0]

Есть некий перечислимый тип. Как узнать, сколько он имеет элементов?


← →
Sonia ©   (2007-10-16 17:05) [1]

Length ?


← →
Сергей М. ©   (2007-10-16 17:07) [2]

Зависит от версии Делфи.


← →
Amoeba ©   (2007-10-16 17:12) [3]


> harisma   (16.10.07 17:04)
>
> Есть некий перечислимый тип. Как узнать, сколько он имеет
> элементов?

Посмотри на его объявление и сосчитай. В чем проблема то?


← →
harisma   (2007-10-16 17:12) [4]

Версия 5.


← →
Reindeer Moss Eater ©   (2007-10-16 17:16) [5]

succ(Ord(High(TMyEnumType)))


← →
Ins ©   (2007-10-16 17:17) [6]

Идея такая, дальше разберетесь...

uses TypInfo;

procedure TForm1.Button1Click(Sender: TObject);
var
 TypeInf: PTypeInfo;
 TypeData: PTypeData;
begin
 TypeInf:=TypeInfo(Integer);
 TypeData:=GetTypeData(TypeInf);
 Caption:=IntToStr(TypeData^.MaxValue - TypeData^.MinValue);
end;


← →
Reindeer Moss Eater ©   (2007-10-16 17:19) [7]

Легких путей мы не ищем :)


← →
Ega23 ©   (2007-10-16 17:26) [8]


> Как узнать, сколько он имеет элементов?


меньше 256


← →
Ins ©   (2007-10-16 17:33) [9]


> Легких путей мы не ищем :)


Так это для пионеров решение ;)

PS: Пардон, клинит...


← →
begin...end ©   (2007-10-16 22:47) [10]

Способы [5] и [6] не будут работать для такого перечислимого типа:

type
 TMyEnumType = (Two = 2, Three = 3);

> Ega23 ©   (16.10.07 17:26) [8]

Неа. Может и больше.



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

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



Память: 0.46 MB
Время: 0.017 c
15-1192033342
oxffff
2007-10-10 20:22
2007.11.11
Очередной баг. Утечка памяти


15-1191791670
malyar
2007-10-08 01:14
2007.11.11
как нарисовать линию зная ее угол наклона и длинну


6-1173167422
dron9205
2007-03-06 10:50
2007.11.11
Передача информации через com-порт


4-1178288430
kain2
2007-05-04 18:20
2007.11.11
Помогите ошибка!!!


15-1192012226
Dennis I. Komarov
2007-10-10 14:30
2007.11.11
2 x ADSL




   Наверх