Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2017, 12:28   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,194
Вопрос Событие при перемещении по ячейкам DBGrid

Добрый день!
Это не просто перемещение.
Идея такая: по клавише Tab перемещаешься по ячейкам в DBGrid.
Нужно, чтобы после нажатия клавиши Tab, когда фокус переходить в следующую ячейку, то надо, чтобы сработало событие какое-нибудь. Причем важно, чтобы фокус из ячейки, откуда делается выход клавишей Tab, не терялся.
Как такое можно реализовать?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 16.06.2017, 12:43   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
Причем важно, чтобы фокус из ячейки, откуда делается выход клавишей Tab, не терялся.
Почему, может и не надо? А так есть OnColExit. В OnColEnter запомнить SelectedField или SelectedIndex и в OnColExit знаем с каким полем имеем дело. Ну еще OnAfterScroll датасета когда переход в ту же колонку другой строки
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 16.06.2017, 12:52   #3
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,194
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Почему, может и не надо? А так есть OnColExit. В OnColEnter запомнить SelectedField или SelectedIndex и в OnColExit знаем с каким полем имеем дело. Ну еще OnAfterScroll датасета когда переход в ту же колонку другой строки
Допустим, я придумаю код, как запомнить имя поля текущего.
Как вывести подсказку точно в ячейку, в которую перешел фокус? По нажатию на Tab. По нажатию на мышку понятно, есть специальное свойство. Интересует клавиатурный вариант перехода по клавише.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 16.06.2017, 13:00   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А что значит подсказка, которую нужно вывести точно в ячейку, в которую перешел фокус?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 16.06.2017, 15:17   #5
Heneken87
Форумчанин
 
Регистрация: 27.04.2012
Сообщений: 219
По умолчанию

События OnKeyUp/Down
Пример для Event/ KeyUp - после того как фокус встанет в ячейку
Код:
ShowMessage((Sender as TDBGrid).Fields[(Sender as TDBGrid).SelectedIndex].AsString);
Пример для Event/ KeyDown - до того как встанет в другую ячейку
Код:
ShowMessage((Sender as TDBGrid).Fields[(Sender as TDBGrid).SelectedIndex].AsString);
Обрамите все проверкой на код клавиши (НАПРИМЕР Tab) и будет это срабатывать только при нажатиях табуляции
Код:
if key = 9 then
ShowMessage((Sender as TDBGrid).Fields[(Sender as TDBGrid).SelectedIndex].AsString);
Пишу много и развернуто

Последний раз редактировалось Heneken87; 16.06.2017 в 15:20.
Heneken87 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Событие при выборе определенного столбца в dbgrid aimk0 БД в Delphi 3 04.08.2011 11:47
шум при перемещении мыши Lotles Компьютерное железо 6 14.12.2010 21:16
Перезапись при копировании/перемещении Shouldercannon Общие вопросы Delphi 4 12.09.2010 02:32
Моргает label при перемещении Maxs Компоненты Delphi 21 26.11.2009 19:57
Перемещение по ячейкам строк в DBGrid .Phoenix БД в Delphi 10 25.09.2009 14:32