![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Есть у компонента TClientDataSet один недостаток. В отличие от таких компонентов, как ADOTable и им подобных он не содержит параметра Sort, и с его помощью выполнить сортировку данных не представляется возможным. Существуют ли аналоги этого компонента с возможностью сортировки данных?
Если ты чего-то не знаешь, значит есть шанс научиться чему-то новому |
#2
|
||||
|
||||
![]() Там это делается с помощью индексов. Создайте предварительно индекс по нужному полю или группе полей и переключайтесь себе на здоровье между ними по мере необходимости.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
||||
|
||||
![]() кинуть на форму TClientDataSet, TDataSource, TDBGrid, связать их. не забыть событие OnCreate.
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, DBClient; type TForm1 = class(TForm) ClientDataSet1: TClientDataSet; DataSource1: TDataSource; DBGrid1: TDBGrid; procedure FormCreate(Sender: TObject); private { Private declarations } procedure DBGridTitleClick(Column: TColumn); public { Public declarations } end; var Form1: TForm1; implementation uses Math; {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin Randomize; ClientDataSet1.FieldDefs.Add('id', ftInteger); ClientDataSet1.FieldDefs.Add('avatar', ftString, 10); ClientDataSet1.CreateDataSet; for i:=1 to $ff do begin ClientDataSet1.Append; ClientDataSet1.FieldByName('id').AsInteger:=i; ClientDataSet1.FieldByName('avatar').AsInteger:=Random($100); ClientDataSet1.Post; end; DBGrid1.OnTitleClick:=DBGridTitleClick; end; procedure TForm1.DBGridTitleClick(Column: TColumn); begin ClientDataSet1.IndexFieldNames:=Column.FieldName; // ClientDataSet1.IndexFieldNames:='avatar;id'; // можно так end; end. Пишу программы за еду. __________________ |
#4
|
||||
|
||||
![]() Спасибо, щас попробую...
Если ты чего-то не знаешь, значит есть шанс научиться чему-то новому |