Вниз
Скачать: CL | DM;

MultiSelect в TDBGrid   Найти похожие ветки 

 
BBCHa ©   (2006-09-29 00:52) [0]

Друзья подскажите плз как программно выделить несколько записей в TDBGrid???

Заранее спасибо всем неравнодушным:)


 
Fay ©   (2006-09-29 01:12) [1]

 with DBGrid1, DataSource.DataSet do
   begin
     Options := Options + [dgMultiSelect];
     Next;
     SelectedRows.CurrentRowSelected := True;
     Next;
     Next;
     SelectedRows.CurrentRowSelected := True;
     Next;
     Next;
     SelectedRows.CurrentRowSelected := True;
   end;


 
RebroFF   (2006-09-29 13:09) [2]

Я использую неподражаемый EhGrid из библиотеки EhLib.
Для начала нужно выставить

 EhGrid.Options := EhGrid.Options + [dgMultiSelect];
После этого любое выделение сделанное пользователем доступно через свойство TDBGridEh.Selection. Selection.SelectionType указывает на тип выделения:

 case EhGrid.Selection.SelectionType of
   gstNon: ShowMessage("Ничего не выделено");
   gstRecordBookmarks: ShowMessage("Выделено строк: "+IntToStr(EhGrid.Selection.Rows.Count));
   gstRectangle:
     begin
       ADODataSet.Bookmark := EhGrid.Selection.Rect.TopRow;
       S1 := ADODataSet.Fields[0].AsString;
       ADODataSet.Bookmark := EhGrid.Selection.Rect.BottomRow;
       S2 := ADODataSet.Fields[0].AsString;
       ShowMessage(Format("Выделено прямоугольник от закладки %s до закладки %s. От столбца %d до столбца %d",
         [S1,S2,
         EhGrid.Selection.Rect.LeftCol,
         EhGrid.Selection.Rect.RightCol]));
     end;
   gstColumns: ShowMessage("Выделено столбцов:"+IntToStr(EhGrid.Selection.Columns.Count));
   gstAll: ShowMessage("Выделен весь грид!");
 end;//case

Более подробный пример есть в Справке в EhLib.


 
RebroFF   (2006-09-29 13:10) [3]

Я сильно извиняюсь. Не заметил слово "программно".



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
15-1163750633
Anatoly Podgoretsky
2006-11-17 11:03
2006.12.03
Новости APC


2-1163798829
frameZ
2006-11-18 00:27
2006.12.03
BDE


2-1163798289
АртемКИН
2006-11-18 00:18
2006.12.03
Создание программы - с базой


2-1163451529
HRust
2006-11-13 23:58
2006.12.03
Веб приложение


9-1139318589
Omar2002
2006-02-07 16:23
2006.12.03
Восстановление после Alt+Tab or Win+D




   Наверх