![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сортировка в TDBGridEh [D6, IB6.x]
Sirruf © (2004-08-25 18:04:00)Пытаюсь отсортировать данные по нажатию на заголовок столбца.
ColumnDefValues.Title.TitleButton := True,
OptionsEh.AutoSortMaking := True.
Почему-то маркер сортировки принимает только значение smDownEh и сколько бы его не нажимать, не меняется уже никогда, даже при прямом присваивании в обработчике OnTitleBtnClick св-ву Column.Title.SortMarker := smUpEh. Это глюк компонента или мой?
Flagman (2004-08-25 18:26:00) [1]procedure TMainForm.DBGridEh1TitleBtnClick(Sender: TObject; ACol: Integer;
Column: TColumnEh);
var FLD : array[0..0] of TVarRec ;
sort : array[0..0] of boolean;
Grid : TCustomDBGridEh;
begin
if Sender is TCustomDBGridEh then begin
Grid:=TCustomDBGridEh(Sender);
fld[0].VType:=vtAnsiString;
if Column.Title.SortMarker=smDownEh then
Column.Title.SortMarker:=smUpEh
else Column.Title.SortMarker:=smDownEh;
string(fld[0].VString):=Column.fieldname;
sort[0]:=Column.Title.SortMarker=smDownEh;
TpFIBDataSet(Grid.DataSource.DataSet).DoSort(fld,sort);
TpFIBDataSet(Grid.DataSource.DataSet).First;
end;
end;