|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.03.2016, 14:45 | #1 |
Пользователь
Регистрация: 11.11.2010
Сообщений: 25
|
Колесико мыши в TDBGrid
Пытаюсь сделать так что бы при изменении активной записи в TDBGrid данные передавались в TEdit
тут все отрабатывает нормально: Код:
Код:
|
17.03.2016, 15:23 | #2 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,885
|
Для чтения текущей записи необходимо не на события грида подписываться, а на событие OnAfterScroll датасета, который этот грид показывает, однако, надо контролировать это дело и при необходимости отписываться (в коде присваивать nil в событие), чтобы не было ошибок.
При этом не надо делать кучу обработчиков на всякие клики, скролы, стрелки клавы и т.п. , поскольку это событие перехватывет именно изменение текущей записи самого датасета. Последний раз редактировалось phomm; 17.03.2016 в 15:25. |
17.03.2016, 15:30 | #3 |
Форумчанин
Регистрация: 12.02.2011
Сообщений: 808
|
phomm при скроле по DBGrid активная запись разве меняется в DataSet?
Grid активный колесиком мышки елозят бегает синие окошечко по записям но активная не меняется, разве не так?
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Последний раз редактировалось Dvoishnik; 17.03.2016 в 15:32. Причина: уточнил |
17.03.2016, 15:52 | #4 | |
Пользователь
Регистрация: 11.11.2010
Сообщений: 25
|
Цитата:
если после этого сразу нажать на button с кодом Код:
|
|
17.03.2016, 21:08 | #5 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,829
|
Какая версия Delphi? Похоже на баг VCL. В старых версиях (5-7) были баги с колесиком, если не изменяет память.
В разработке: воспроизводственный контур ИТ
|
17.03.2016, 21:55 | #6 | ||
Форумчанин
Регистрация: 27.10.2014
Сообщений: 594
|
Цитата:
Поэтому и инфа берется из предыдущей записи... Цитата:
Вам уже намекали, что строку Код:
procedure TForm1.ApplicationEvents1Message() и вставить в обработчик procedure TForm1.ADOQuery1AfterScroll()... И потом радоваться отсутствию отставания... Последний раз редактировалось kropotkina-alice; 17.03.2016 в 22:02. |
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Включить колесико мышки в редакторе VBA | agregator | Microsoft Office Excel | 2 | 29.08.2011 19:24 |
Колесико мыши | IvanE_S | Общие вопросы Delphi | 8 | 14.12.2010 18:16 |
DBGrid и колесико мыши(скроллинг) | M@riy@ | Общие вопросы Delphi | 3 | 30.10.2010 23:47 |
Можно ли макросом, отключить колесико мышки | valerij | Microsoft Office Excel | 8 | 18.11.2008 16:52 |