Вниз
Скачать: 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.015 c
15-1191846345
ASDE
2007-10-08 16:25
2007.11.11
Ярлык к программе под админа


1-1187832972
Alex_Y
2007-08-23 05:36
2007.11.11
Данные из clipboard


11-1177177531
bessam
2007-04-21 21:45
2007.11.11
BitBtn.Enabled := False , а по виду надписи не скажешь.


11-1175523578
Fregl
2007-04-02 18:19
2007.11.11
Поддержка MySQL


9-1162993242
dfsfwe
2006-11-08 16:40
2007.11.11
DelphiX




   Наверх