Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.12;
Скачать: CL | DM;

Вниз

DBGrid   Найти похожие ветки 

 
Dub   (2004-08-17 04:15) [0]

Создал форму, на неё поместил DBGrid (использую не BDE, а TDBF - компонент). При заполнении таблицы (наглядность обеспечивается DBGrid"ом) перемещение для создания новой записи происходит по нажатию кн. TAB ( по нажатию происходит сохранение предыдущей записи). Вопрос : где можно найти обработчик этого события (нажатие TAB) и к какому компоненту он должен быть привинчен.  Заранее спасибо всем ответевшим!!!


 
TUser ©   (2004-08-17 05:31) [1]

OnKeyDown у грида.
Actions


 
Dub   (2004-08-17 06:52) [2]

OnKeyDown - срабатывает по нажатию Shift"а,
           а необходимо, чтобы по TAB"у ???
Actions- что имеется в виду?


 
Skyle ©   (2004-08-17 07:22) [3]


> OnKeyDown - срабатывает по нажатию Shift"а,

А Tab - уже не Key?
Другое дело, что до него (до TDBGrid) KeyDown для Tab может не дойти.
Потому как Tab - особая кнопка, сначала посылается особое сообщение, которое может обработаться ДО возникновения WM_CHAR (и соответственно всяких KeyDown, KeyPress). Поэтому самым простым способом обработать его будет создание Action с нужным шоткатом (шоткаты проверяются в первую очередь). Про Action смотри TActionList.

Если есть желание поглядеть подробнее, то см. реализацию TWinControl.CNKeyDown.

Другим способом получить желаемое будет перекрытие у твоего грида вышеуказанного метода TWinControl.


 
Dub   (2004-08-17 09:04) [4]

Действие создать TActionList получилось, а вот Action для Грида не нашёл - это не кнопка и не меню !!! Поэтому
каким образом можно перекрывать методы (в частности для грида, и вообще )?


 
Skyle ©   (2004-08-17 09:27) [5]


>  вот Action для Грида не нашёл

Тут будет не Action для грида, а что-то типа
procedure TMyform.MyActionExecute(Sender : TObject);
begin
{Вот тут необходимое насилие над гридом при получении Tab}
end;



> каким образом можно перекрывать методы

Почитай в справке. Ключевые слова override, virtual.
Думаю их хватит.



Страницы: 1 вся ветка

Текущий архив: 2004.09.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
3-1092742537
Эдик Дятлов
2004-08-17 15:35
2004.09.12
Как получить подключенных пользователей в базе SQL Anywhere


14-1093514830
kogor
2004-08-26 14:07
2004.09.12
У кого есть СД от книги The Tomes of Delphi™ Algorithms and Data?


4-1090998661
TUser
2004-07-28 11:11
2004.09.12
GetWindowPlacement


1-1093410172
TankMan1
2004-08-25 09:02
2004.09.12
Как запустить приложение с параметром? :)


14-1092991619
nasty
2004-08-20 12:46
2004.09.12
существуют ли утилиты, позволяющие...