Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.046 c
15-1271094399
Юрий Зотов
2010-04-12 21:46
2010.08.27
Что будет, если...


2-1265804991
Вася
2010-02-10 15:29
2010.08.27
A.V. при закрытии формы с TWebBrowser


2-1270565783
Buzzik
2010-04-06 18:56
2010.08.27
Проблема с потоками


15-1271686611
БарЛог
2010-04-19 18:16
2010.08.27
А как будет по-английки...


15-1271160223
Медвежонок Пятачок
2010-04-13 16:03
2010.08.27
нас ждет еще один капец




   Наверх