Вниз
Скачать: CL | DM;

Перехват нажатия мышки.   Найти похожие ветки 

 
BVS   (2002-02-13 17:52) [0]

Привет.

У меня такая проблема.

В программе я создаю Ole обьект. Указаваю ОЛЕ серверу патель, куда он будет рисовать. И после этого программа теряет контроль над этой панелью.
Мне надо отрабатывать событие на нажатие кнопки мышки, а панель уже не реагирует на мои действия.

Что делать?


 
Анонимщик ©   (2002-02-13 20:45) [1]

События для OLE-объекта OnMouseMove, OnMouseDown, ... есть?
Вот и обрабатывай их.


 
BVS   (2002-02-14 10:17) [2]

В том-то и дело, что у OLE-объекта нет никаких стандартвых событий (я загружаю в OLE MapInfo).


 
Анонимщик ©   (2002-02-14 10:46) [3]

У контейнера нет стандартных событий или как? Не пойму чего-то. Или тебе нужно при активизированном содержании контейнера события в нем своей программой обрабатывать? Объясни.


 
BVS   (2002-02-14 12:50) [4]

Я не использую контейнер.

OleMapInfo := CreateOLEObject("MapInfo.Application");
OleMapInfo.Do("Set Application Window "+IntToStr(Panel_Map.Handle));

При этом MapInfo перехватывает управление над панелью Panel_Map и работает подобно контейнеру.
Беда в том, что перестают работать все события этой патели, как будто эта панель вообще не пренадлежит приложению.
А мне надо отследить нажатие на панель из приложение.


 
Вячеслав ©   (2002-02-14 13:53) [5]

Конкретно, для МапИнфо, можно реализовать CallBack;
Это делается либо через ДДЕ, либо через ОЛЕ.
Кстати в ейной документации это подробно описано, на примере С++
и, кажеться, ВизуалВасика. Раздел интегрированная картография :))


 
BVS   (2002-02-14 16:41) [6]

2 Вячеслав

Главу эту я нашел, но там примеры только на С++ и VB.
Никак не могу врубиться как создавать IDispatch.
Может подбросишь примерчик.

Не из празного любопытства прошу.
Уж очень нужно. Работа стоит.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
1-9107
Ross
2002-02-15 21:08
2002.03.04
Где найти Label с вертикальным направлением текста?


4-9352
BH
2002-01-04 09:00
2002.03.04
Перемещение файлов и папок


3-9070
amamed_3071
2002-01-21 11:41
2002.03.04
Save Report (Qreport)


1-9234
Beer
2002-02-15 10:50
2002.03.04
Получить название директории...


3-9062
Rustik
2002-02-06 16:32
2002.03.04
Проблема с заполнением DBCombobox из модуля данных




   Наверх