- Виталий Тюменцев - http://www.tumencev.pp.ua -

Как в TDBGridEh (Delphi + EhLib ) выделять записи клавиатурой

Posted By Виталий Тюменцев On 28.12.2010 @ 08:26 In Delphi,Как сделать? | No Comments

Недавно встал вопрос, как используя только  клавиатуру в  TDBGridEh (EhLib) отмечать и снимать выделение нескольких записей не последовательного диапазона?

Все очень просто.

Установите Options - dgRowSelect и dgMultiSelect в True.
Установите OptionsEh - dgрClearSelection в False.
На событие OnKeyPress вашего DBGridEh1 разместите такой код:

procedure TForm1.DBGridEh1KeyPress(Sender: TObject; var Key: Char);
begin
 if key = ' ' then
  with (Sender as TDBGridEh) do
   if DataSource.DataSet.Active then
    SelectedRows.CurrentRowSelected := not SelectedRows.CurrentRowSelected;
 end;

Теперь при нажатии клавиши пробел в DBGridEh1  вы будете выделять запись или снимать выделение с отмеченной записи на которой стоит текущий указатель.


Article printed from Виталий Тюменцев: http://www.tumencev.pp.ua

URL to article: http://www.tumencev.pp.ua/programming/delphi/tdbgrideh-ehlib-multiselect-only-keyboard.html

© 2011 Виталий Тюменцев.
Лицензия Creative Commons: С указанием авторства-Некоммерческая-С сохранением  условий (Attribution-NonCommercial-ShareAlike)