Компоненты VisualTech, версия 1.0.2:
Изменения в TxDBGrid
добавлено свойство Autosort: Boolean.
В модуле xDBGrid объявлена глобальная переменная - указатель на метод сортировки данных
TAutoSortDataSet = procedure (DataSet: TDataSet; Column: TxColumn; CellCursorPos: TCellCursorPos);
var
AutoSortDataSet: TAutoSortDataSet;
Если AutoSort = True и AutoSortDataSet <> nil то при щелчке мышью на заголовке,
вызывается AutoSortDataSet(DataSet: TDataSet; Column: TxColumn; CellCursorPos: TCellCursorPos);
Метод будет вызываться абсолютно для всех сеток TxDBGrid, в которых свойство AutoSort = True
Пример процедуры для IBX:
- Код: Выделить всё
- uses xDBGrids;
 .............................
 procedure OnAutoSortDataset(DataSet: TDataSet; Column: TxColumn; CellCursorPos: TCellCursorPos);
 begin
 {$IFDEF IBX}
 if DataSet is TIBCustomDataSet then
 begin
 if CellCursorPos = ccpTop then
 TIBCustomDataSet(DataSet).OrderFields := Column.FieldName
 else
 TIBCustomDataSet(DataSet).OrderFields := Column.xFieldName;
 end;
 {$ENDIF}
 end;
 ........................
 begin
 AutoSortDataSet := @OnAutoSortDataset;
 end;
Компоненты IBX, версия 1.0.8.
Исправлено то, что накосячено в прошлой версии.
Добавлено свойство OrderFields, с помощью которого можно упорядочить данные по любому полю.
Внимание! Этот метод не производит локальную сортировку данных в буфере, а изменяет SQL запрос
в QSelect, добавляя или изменяя инструкцию ORDER BY.
изменен метод Locate, в нем UpperCase заменены на UTF8UpperCase(при регистронезависимом поиске), найденная строка центрируется.
DieselPascal, версия 1.0.5
Собрано на новых компонентах visualTech 1.0.2 и IBX 1.0.8
Добавлены функции
function IsDigit(C: Char): Boolean;
function IsLetter(C: Char): Boolean;
function IsSimbol(C: Char): Boolean;
Параметр С должен быть приведен к Ansi
пример:
- Код: Выделить всё
- var
 S: string;
 B: Boolean;
 begin
 S := 'абв';
 S := UTF8ToCP1251(S);
 B := IsLetter(S[1]);
 end;




 
 