Форум — Ответы     (  К темам )
 ?  Anry: Комбинация клавиш в DBGrid (20-04-2003 12:22:03)
Задача такая: По нажатию клавиши "стрелка влево" в DBGrid'е необходимо произвести действие аналогичное нажатию комбинации клавиш Shift+Tab, т.е перейти на предыдущую строку. Никак не получается передать Grid'у нажатие этой комбинации. Подскажите пожалуйста как это можно сделать.
 Павел (21-04-2003 14:10:15)
1
А если поставить в свойстве формы, на которой находится Grid
KeyPreview = true и попробовать перехватить в обработчике
формы ?

2
>>По нажатию клавиши "стрелка влево"
>>перейти на предыдущую строку
>>Никак не получается передать Grid'у нажатие этой комбинации

А зачем передавать это Grid-у ?
Не проще передать это компоненту, с которым связан этот Grid:
Table1->Prior(); // Перейти на предыдущую запись
или
Table1->Next(); // Перейти на следующую запись
 Anry (21-04-2003 15:59:16)
На счет первого пункта я пробовал — у меня не получилось, а на счет второго, то это интересная мысль. Просто иИзначально не в ту степь полез (бывает торможу). Большое спасибо за подсказку
 Павел (21-04-2003 19:21:41)
// Да, все работает

void __fastcall TForm1::DBGrid1KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Key == VK_LEFT) {
Table1->Prior(); Key = 0;
}
if(Key == VK_RIGHT) {
Table1->Next(); Key = 0;
}
}
//----------------------------------------------------------