Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сортировка в 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;


Наверх

Титульная страница Поиск, карта сайта Написать письмо