Главная страница
    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.45 MB
Время: 0.029 c
2-1163112797
image
2006-11-10 01:53
2006.12.03
Как узнать количество потоков работающих в данный момент времени


2-1163273365
(_)
2006-11-11 22:29
2006.12.03
Проект.


15-1163485918
KygECHuK
2006-11-14 09:31
2006.12.03
Маленький вопрос


15-1163334763
ProgRAMmer Dimonych
2006-11-12 15:32
2006.12.03
Судя по реакции гугла, вопрос сложный.


15-1163136696
DelphiN!
2006-11-10 08:31
2006.12.03
Сегодня начальство попросило написать свою OC





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский