C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 106 - Сообщения от ATL элемента управления / ActiveX по шагам / Приложение

Шаг 106 - Сообщения от ATL элемента управления

Если Вы совсем плохо представляете о чем идет речь прочитайте "Шаг 17 - События". Cделайте COM объект в VBA и только потом на ATL. Для того, чтобы элемент управления ATL мог передавать сообщения контейнеру необходимо, чтобы он поддерживал интерфейс IConnectionPoint. Для этого при создании ALT объекта необходимо указать поддержку этого интерфейса. Создавайте проект на основе ATL Com Wizard с именем AtlEvent1. Выберите свойство FillContol и имя ALT классу CEventControl. Обязательно перейдите на вкладку атрибуты и обязательно установите галочку рядом с support connection points:

106_1.gif (6218 b)

Посмотрите в ClassView у нас теперь два интерфейса. Интерфейс сообщений и интерфейс элемента.

106_2.gif (2461 b)

Давайте к интерфейсу сообщений добавим метод. Cкажем Test. Eго мы будем вызывать если захотим что то сообщить контейнеру.

106_3.gif (2129 b)

Тип нужен void. Вы сможете его выбрать из свойств. Теперь давайте соберем проект что бы сформировалась библиотека типов. Делайте Build. Теперь мы можем к нашему элементу управления применить точки подключения. Щелкайте на нем правой кнопкой мыши.

106_4.gif (3223 b)

Нам останется выбрать интерфейс и сказать OK.

106_5.gif (3433 b)

В результате у нас появится прокси класс с методом Fire_Test():

106_6.gif (3018 b)

Именно этот метод нужно вызывать, если Вы хотите сообщить что-то контейнеру. На всякий случай прежде чем реализовывать подобный интерфейс сохраните проект, скомпилируйте его, закройте все файлы, а втрое после этого вызывайте меню Implement connection Point.


| |
Автор Каев Артем.
[AD]