Главная страница
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.137 c
2-1269519135
Влад
2010-03-25 15:12
2010.08.27
ActiveX


15-1269865652
И. Павел
2010-03-29 16:27
2010.08.27
Проблема с кодировками в Vista


2-1269178623
Delphist2
2010-03-21 16:37
2010.08.27
динамический массив


2-1275394725
Студент
2010-06-01 16:18
2010.08.27
Table.Locate не правильно ищет по 2 полям


2-1274513044
timekiller
2010-05-22 11:24
2010.08.27
TWebBrowser, Просмотр кода, Access Violation