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

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

Обработка клавиши TAB в DBGrid


Дундук ©   (2002-07-05 05:49:00) 

У меня в DBGrid отображается только одно поле из БД.
Хочу сделать чтобы при нажатии клавиши TAB указатель
не перемещался на следующую запись, а переходил на
другой элемент формы (например на ComboBox). Сделал
следующее, на событие OnKeyDown DBGrid"a повесил:

procedure TMainForm.grdOrgKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If Key=9 then
Begin
TabOrg.Prior;
MainForm.SelectNext(Sender as tWinControl, True, True);
End;
end;

Вроде работает, но с одним залепоном. Если указатель стоит на
первой записи, то при нажатии TAB сначала указатель прыгает на
следующую запись, а потом переходит на ComboBox. Подскажите что
я не так делаю?


Johnmen   (2002-07-05 09:25:00) [1]

Добавь в бегин-блок : Key:-=0;


roottim   (2002-07-05 09:22:00) [2]

Options -> dgTabs set False


VAleksey   (2002-07-05 09:18:00) [3]

Попробуй так :
if Ord(vk_Tab)=Ord(key) then <Нужный контрол>.SetFocus;


Наверх

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