Главная страница
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.082 c
2-1268379582
timekiller
2010-03-12 10:39
2010.08.27
ProgreessBar, подвисание проги


2-1272341393
Игорь
2010-04-27 08:09
2010.08.27
GetProcessAffinityMask


4-1236148613
ТЧеловек
2009-03-04 09:36
2010.08.27
Запуск второй копии приложения только для другого пользователя ?


2-1274359047
РП
2010-05-20 16:37
2010.08.27
Байты в число и число в байты нужной размерности


15-1263977721
картман
2010-01-20 11:55
2010.08.27
Обработка ошибок