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

Что внутри Variant?   Найти похожие ветки 

← →
kreyl   (2006-02-25 21:06) [0]

Есть класс, использующий для хранения параметра тип Variant (поскольку там может быть и integer, и string, и double).
И вот встал вопрос проверки введенного пользователем. То есть нужно узнать, можно ли этот variant счесть строкой, или целым, или дробным.
Стандартные функции типа VarIsType(...) не срабатывают, поскольку с их точки зрения тип варианта - неизменно varOleStr.
Не очень хочется превращать вариант в строку и разбираться, допустимые ли там символы... Есть ли еще :) варианты?
Заранее спасибо :-)


← →
unknown ©   (2006-02-25 21:32) [1]

Variant - хитрая штука :-)
Используй свой "VarIsType", например :

 function vIsType(v:Variant;vType:word):Boolean;
 begin
   case  vType of
     varDouble:
       Result:=VarType(v) in [varDouble,varCurrency];
     varInteger:
       Result:=VarType(v) in [varSmallint, varInteger, varSingle,
         varShortInt,varByte,varWord,varLongWord,varInt64];
   end;
 end;



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

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



Память: 0.45 MB
Время: 0.036 c
2-1140631346
Volf_555
2006-02-22 21:02
2006.03.12
Как изменить функцию InputQuery, не переписывая её полностью?


1-1139228062
GreySerg
2006-02-06 15:14
2006.03.12
TOleContainer и Word.Application на форме


11-1111965539
Stals
2005-03-28 03:18
2006.03.12
Пример добавления строк с различным форматированием в RichEdit...


4-1134816898
Igor_thief
2005-12-17 13:54
2006.03.12
Проблема с Hook om


3-1134036658
Stealth
2005-12-08 13:10
2006.03.12
MySQL и Multiple-step operation generated errors




   Наверх