Поиск:

Ответ в темуСоздание новой темы Создание опроса
> наследование событий, компоненты 
:(
    Опции темы
DareDevil225
Дата 30.12.2008, 09:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



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

Есть ActiveX компонент.
С помощью билдера создаю обертку(New VCL Component) над данной DLL-кой.
Создаю свой новый класс, который наследую от сгенерированного класса-обертки и оформляю его в Package.

В ActiveX компоненте обрабатывается событие EventsMouseMove.
Но, в сгенерированной обертке, которая является наследником от TOleControl, тоже есть событие MouseMove.

Пытаюсь унаследовать эти события в производном классе так:
Код

__property OnMouseMove;
__property OnEventMouseMove;



События появляются в Object Inspector в списке Events.
Объявляю обработчики на эти события.
OnMouseMove событие приходит, а OnEventMouseMove - нет.
Кто-нибудь встречался с таким наследованием от ActiveX компонента? В чем может быть проблема?

Т.е. другими словами, как обрабатывать сообщения, в VCL-компоненте, основанном на ActiveX-компоненте( не VCL-ском )?.

Может у кого-нибудь есть какие предположения?

Это сообщение отредактировал(а) DareDevil225 - 30.12.2008, 11:20
PM MAIL   Вверх
DareDevil225
Дата 30.12.2008, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Неужели никто не знает что можно придумать?   smile 
PM MAIL   Вверх
Romikgy
Дата 30.12.2008, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

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



Цитата(DareDevil225 @  30.12.2008,  08:24 Найти цитируемый пост)
__property OnEventMouseMove;

а чье это чудо?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
DareDevil225
Дата 11.1.2009, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Romikgy, того, кто писал ActiveX компонент.
Видимо там так переопределяется стандартный OnMouseMove.
PM MAIL   Вверх
Romikgy
Дата 11.1.2009, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

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



ну тогда для нормальных подсказок надо видеть код того по чему подсказываешь, ибо у 
Цитата(DareDevil225 @  30.12.2008,  08:24 Найти цитируемый пост)
TOleControl

нет
Цитата(DareDevil225 @  30.12.2008,  08:24 Найти цитируемый пост)
OnEventMouseMove

а что туда засунул ты или другой разработчик , про 17 строку знаешь ?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
DareDevil225
Дата 11.1.2009, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Romikgy, что нет такого эвента я понимаю, в том -то и дело, что нужно к стандартным добавить те, которые определены в ActiveX-компоненте.
А что за 17 строка? Честно, я такого понятия просто не слышал

Это сообщение отредактировал(а) DareDevil225 - 11.1.2009, 16:52
PM MAIL   Вверх
Romikgy
Дата 11.1.2009, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

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



Цитата(DareDevil225 @  11.1.2009,  15:48 Найти цитируемый пост)
в том -то и дело, что нужно к стандартным добавить те, которые определены в ActiveX-компоненте.

что должен делать такой эвент ?

Цитата(DareDevil225 @  11.1.2009,  15:48 Найти цитируемый пост)
А что за 17 строка?

это говорит о том что без кода(исходников) подсказывать нечего , и поиск ошибок осуществляет сам спрашивающий!



--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
DareDevil225
Дата 12.1.2009, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Romikgy @ 11.1.2009,  21:27)
Цитата(DareDevil225 @  11.1.2009,  15:48 Найти цитируемый пост)
в том -то и дело, что нужно к стандартным добавить те, которые определены в ActiveX-компоненте.

что должен делать такой эвент ?

По сути этот эвент тоже отслеживает перемещение мыши, необходимо:
- Если ActiveX-компонент уже обрабатывает стандартный эвент, то использовать хотелось бы оба
- Если не обрабатывает, то необходимо использовать стандартный
т.е. пример
- OnMouseMove( стандартный) и OnEventMouseMove( из ActiveX )  - оба отлавливают перемещение мыши, необходимо использовать OnEventMouseMove и OnMouseMove
- OnDblClick( стандартный ) и НЕТ в ActiveX - хотелось бы чтобы использовался стандартный

Примерно так
PM MAIL   Вверх
Romikgy
Дата 12.1.2009, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

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



я ниче не понял , можно тоже но в коде?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
DareDevil225
Дата 12.1.2009, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Romikgy @ 11.1.2009,  21:27)
это говорит о том что без кода(исходников) подсказывать нечего , и поиск ошибок осуществляет сам спрашивающий!

Код есть только сгенерированной билдером обертки и все
Суть же ActiveX-компонента в том и состоит, чтобы скрыть реализацию.

Если же мне были бы доступны исходники самого компонента, этого вопроса и не возникло бы, поскольку бы все необходимое я реализовал бы в самом компоненте.
PM MAIL   Вверх
Romikgy
Дата 12.1.2009, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

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



то ли я в лыжах....
кто к кому  от кого скрыть ? какой компонент у тя есть (обертка)? 
можно более точно выражатся?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

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

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


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

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


 




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


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

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