Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DBGrid [D5, Win95/98, Win2k, WinXP]


Valeri ©   (2004-06-23 13:25:00) 

Редактирование в ячейке DBGrid'а происходит при нажатии Enter. Можно ли переназначить на другую клавишу, (а лучше сочетание)?


Valeri   (2004-06-23 16:10:00) [1]

Спасибо!
Я думал, что в OnKeyPress Ctrl не обработать, а оказалось у сочетаний тоже свой код есть!
Все работает!
if Key=#13 then   //  Если Enter
begin
...обработка...
end
else if (Key=#10) then Key:=#13 ;  
//Если Контрл+Enter


Johnmen   (2004-06-23 15:16:00) [2]

Виноват...:)
Обрабатывай OnKeyPress.
И ифы через else д.б.


Valeri   (2004-06-23 15:04:00) [3]

Простите за мой тупняк. Уже замучился
Надо чтобы по Enter происходила моя обработка, а по Ctrl+Enter редактировалась ячейка грида
Делаю так:
if (Key=VK_RETURN) and (Shift = []) then
begin
    Key := 0;
 ...обработка...
end;
if (Key=VK_RETURN) and (Shift = [ssCtrl])  then
   Shift := [];

По Enter входит в редактирование ячейки и выполняет мою обработку, по Ctrl+Enter в редактирование ячейки грида не входит.


Johnmen   (2004-06-23 14:30:00) [4]

OnKeyDown

if Key=VK_RETURN then Key:=0
else if Key=<другая клавиша> { and Shift...} then Key:=VK_RETURN;


Наверх

Титульная страница Поиск, карта сайта Написать письмо