Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.11;
Скачать: 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 вся ветка

Текущий архив: 2007.11.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
2-1192970417
sdaf
2007-10-21 16:40
2007.11.11
Ошибка I/O error 32


2-1192589687
San1712
2007-10-17 06:54
2007.11.11
Как пользоваться функцией IsDebuggerPresent ?


15-1191918045
031178
2007-10-09 12:20
2007.11.11
Компоненты


8-1168776768
andr1962
2007-01-14 15:12
2007.11.11
Помогите с directdraw


15-1191508929
Ega23
2007-10-04 18:42
2007.11.11
Рыдал