Форум: "Основная";
Текущий архив: 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.
Может подбросишь примерчик.
Не из празного любопытства прошу.
Уж очень нужно. Работа стоит.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c