Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.03;
Скачать: 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 вся ветка

Текущий архив: 2006.12.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
15-1163676419
SerJaNT
2006-11-16 14:26
2006.12.03
PHP энд MySQL


4-1153743219
Сан Саныч
2006-07-24 16:13
2006.12.03
Как получить ID харда? Не серийник, а ID!


15-1163586466
YOjik
2006-11-15 13:27
2006.12.03
Загадка


3-1159522323
RomanH
2006-09-29 13:32
2006.12.03
Результат запроса null->результат запроса=0


15-1163421348
Двоишник
2006-11-13 15:35
2006.12.03
Prolog