Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

сортировка по типам   Найти похожие ветки 

 
mops   (2010-03-04 23:16) [0]

Здравствуйте,
у меня есть таблица (devexpress), в ней динамически создаю колонки. при клике по заголовку, для сортировки, данные в разных колонках всегда сортируются как стринг, хотя при создании колонки я указываю какой тип данных там будет. Сделал небольшую функцию, чтобы она сама определяла тип и сортировала. но что не получается :) подскажите, что

спасибо


function Compare(V1,V2: Variant): Integer;
var
 vt: Integer;
begin
 if (V2 = null) then
   begin
     Result := 1;
     Exit;
   end;
 if (V1 = null) then
   begin
     Result := -1;
     Exit;
   end;
 vt := VarType(V1) and VarTypeMask;
 case vt of
   varInteger, varDate, varDouble, varBoolean: begin
     if (V1 > V2) then Result := 1;
     if V1 = V2 then Result := 0;
     if (V1 < V2) then Result := -1;
   end;
   varUString: begin
     Result := CompareStr(String(V1), String(V2));
   end;
 end;
end;


 
Loginov Dmitry ©   (2010-03-04 23:57) [1]


>  vt := VarType(V1) and VarTypeMask;
>  case vt of
>    varInteger, varDate, varDouble, varBoolean: begin


не смог понять я этих махинаций, ну да ладно.

Для определения типа варианта служат функции VarIsXXX. Например:
VarIsOrdinal, VarIsNull, VarIsNumeric и т.д.


 
mops   (2010-03-05 00:08) [2]

спасибо, попробую



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

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

Наверх




Память: 0.47 MB
Время: 0.079 c
2-1266443303
Funtik
2010-02-18 00:48
2010.08.27
LIstBox


15-1267466564
М. Береговой
2010-03-01 21:02
2010.08.27
Что за полосы на дне Тихого Океана?


2-1272357036
oleg_teacher
2010-04-27 12:30
2010.08.27
DateTimePicker2.


4-1233845602
niro
2009-02-05 17:53
2010.08.27
Эмулирование действий пользователя в MSIE


2-1270538489
istok
2010-04-06 11:21
2010.08.27
TTimer в Delphi2010