Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];




Вниз

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


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.
Может подбросишь примерчик.

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




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.029 c
1-9144            VDXMAN                2002-02-17 17:03  2002.03.04  
HELP ME


14-9269           mvg_first             2002-01-10 20:32  2002.03.04  
Есть ли альтернатива АДО при доступе к MS SQL 2000


7-9312            UN9GW                 2001-11-29 21:46  2002.03.04  
как получить данные извне с регистра 0x378 LPT порта?


3-9061            Wizd                  2002-02-06 14:23  2002.03.04  
Как удалить из DBF таблицы кучу ненужных полей? ...


1-9159            Priz_Datiy            2002-02-13 17:06  2002.03.04  
Загрузка информации из файла