Поиск:

Ответ в темуСоздание новой темы Создание опроса
> событие DblClick в гриде, не работает при заполненом recordsource 
:(
    Опции темы
Artiom
Дата 28.6.2006, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1031
Регистрация: 11.3.2003
Где: Минск\Баку

Репутация: 3
Всего: 17



хочу обрабатывать событие двойного клика мышки на гриде (вызывать форму для изменения записи). Но почему-то грид на двойной клик никак не реагирует, если заполнены данные. А если я кликаю на пустом гриде (или просто на пустых строках кликаю) - то событие срабатывает. Почему так? не могу понять 


--------------------
Если тебя жизнь трахает, значит, ты ещё живой
PM MAIL ICQ   Вверх
Сергей
Дата 28.6.2006, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 25.6.2006

Репутация: 1
Всего: 1



Grid – это объект контейнер, у которого есть свой обработчик события – DblClick.
Но обработчик такого же события имеется и у объектов входящих в него.
Вот для примера, если взять Grid с одной колонкой, то такой же обработчик события – DblClick имеется и у объектов Header1 и Text1, которые входят в объект Column1, который в свою очередь входит в объект Grid.

Посмотри внимательно - куда прописан код обработки события – DblClick, собственно самого Grid или где в другом месте.
Судя по твоим намерениям, то - должен быть для объекта  Text1.
 
PM MAIL   Вверх
Artiom
Дата 29.6.2006, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1031
Регистрация: 11.3.2003
Где: Минск\Баку

Репутация: 3
Всего: 17



Да, действительно так было бы логично. но DblClick не срабатывает почему-то на Text1. Честно говоря - не могу понять для какого объекта у меня вызвается обработчик в случае когда кликаю по строкам грида.     


--------------------
Если тебя жизнь трахает, значит, ты ещё живой
PM MAIL ICQ   Вверх
Cashey
Дата 29.6.2006, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бессмертный
****


Профиль
Группа: Завсегдатай
Сообщений: 3441
Регистрация: 13.11.2002
Где: в столице

Репутация: 13
Всего: 60



Цитата(Artiom @  29.6.2006,  10:10 Найти цитируемый пост)
Да, действительно так было бы логично. но DblClick не срабатывает почему-то на Text1. Честно говоря - не могу понять для какого объекта у меня вызвается обработчик в случае когда кликаю по строкам грида.     

Дело в том, что метод DblClick грида отрабатывает когда активен сам грид, а вот когда в гриде отоброжаются записи, то их отоброжает уже вложенный Control. У него и срабатывает DblClick. Но сложность в том срабатывать будет только то Control, на который ты кликаешь, если надо, что бы срабатывала вся строка, то создай клас-наследник TText и в его методе DblClick пропиши необходимый код. И помести этот клас в замен стандартного

Добавлено @ 09:41 
Сорри за ошибки, работы много - пишу почти не глядя 


--------------------
библия учит любить ближнего, а камасутра обучает как именно
PM Jabber   Вверх
Сергей
Дата 29.6.2006, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 25.6.2006

Репутация: 1
Всего: 1



Да. можно так как сказал прыдыущий оратор - Cashey.
А если не хочешь заморачиваться с классами и менять в гриде control Text1 на TText, то пропиши свой код в обработчике события DblClick   каждого объекта Text1, входящего в грид. Т.е. сколько колонок - столько раз и пропиши код. 
PM MAIL   Вверх
Artiom
Дата 29.6.2006, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1031
Регистрация: 11.3.2003
Где: Минск\Баку

Репутация: 3
Всего: 17



Цитата(Сергей @  29.6.2006,  12:35 Найти цитируемый пост)
то пропиши свой код в обработчике события DblClick   каждого объекта Text1, входящего в грид. Т.е. сколько колонок - столько раз и пропиши код. 

Так и делаю - не работает 


--------------------
Если тебя жизнь трахает, значит, ты ещё живой
PM MAIL ICQ   Вверх
Сергей
Дата 29.6.2006, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 25.6.2006

Репутация: 1
Всего: 1



1. Что у тебя прописано в RecordSource для Grid ? (Здесь должно быть имя таблицы)
2. Что у тебя прописано в ControlSource для Column1 ? (Здесь должно быть имя поля таблицы)
3. Что у тебя прописано в ControlSource для Text1 ? (Здесь должно быть имя поля таблицы)
4. Ты умешь работать с Debuggerом ?

ЗЫ. Сечас ухожу на работу. Если до вечера не разрешится, то попробуем дальше.

Добавлено @ 13:59 
Да, еще в догонку - с какой версией Foxa работаешь? 
PM MAIL   Вверх
Artiom
Дата 29.6.2006, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1031
Регистрация: 11.3.2003
Где: Минск\Баку

Репутация: 3
Всего: 17



в RecordSource происан курсор, ControlSource для Column1 и Text1 я не прописывал, отображает нормально вроде без этого(впрочем если прописать поле,то ничего не меняется).
работаю с VFP 8.0.
Цитата(Сергей @  29.6.2006,  13:58 Найти цитируемый пост)
работать с Debuggerом

только начинаю smile .  SET STEP ON умею ставить  

Это сообщение отредактировал(а) Artiom - 29.6.2006, 14:53


--------------------
Если тебя жизнь трахает, значит, ты ещё живой
PM MAIL ICQ   Вверх
Сергей
Дата 29.6.2006, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 25.6.2006

Репутация: 1
Всего: 1



1. Запускаешь Debugger
2. Ставишь первой командой в обработчике события – DblClick команду - SET STEP ON
3. Запускаешь форму на выполнение
4. Выполняешь DblClick в строке – Grid
5. Переключаешься на Debugger
6. Нажимаешь 11 кнопку слева – Call Stack Windows
7. Смотришь цепочку стека вызовов
8. Глубоко думаешь   smile 
9. Делаешь, не мене глубокие - выводы  smile 
 
PM MAIL   Вверх
Artiom
Дата 30.6.2006, 09:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1031
Регистрация: 11.3.2003
Где: Минск\Баку

Репутация: 3
Всего: 17



Сегодня прописал обработчик  DblClick для грида и вдруг он заработал! ничего больше вроде не менял. Все работает, а почему не работало раньше - не понимаю. Так или иначе - проблема решена 


--------------------
Если тебя жизнь трахает, значит, ты ещё живой
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Foxpro/Clipper/Dbase"
MoLeX

Запрещается!

1. Публиковать ссылки для чисто рекламных целей.

2. Оффтопить, флеймить, говорить не культурно.

Пожалуйста, адекватно задавайте свой вопрос. Тема должна создаваться с названием характеризующем Вашу проблему.

Задавайте вопросы правильно - как спросите, так вам и ответят.

Разрешено!

Давать ссылки на статьи, обзоры, если это не нарушает первый пункт правил.

Задавая вопрос, давайте нужную информацию касающуюся Вашей проблемы. Этим вы ускорите полезные ответы.

P.S. Размещение рекламы будет строго наказываться!



Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MoLeX

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Foxpro/Clipper/Dbase | Следующая тема »


 




[ Время генерации скрипта: 0.0503 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.