Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Событие ActiveX

343
17 января 2007 года
lena_ki
282 / / 14.04.2005
[FONT=Arial]В OleContainer загружен ActiveX:[/FONT]
[FONT=Arial]OleContainer1->CreateObject(NameOfClass,false);[/FONT]
[FONT=Arial]OleContainer1->DoVerb(ovShow);[/FONT]
[FONT=Arial]Где NameOfClass имя класса нужного ActiveX.[/FONT]
[FONT=Arial]У загруженного ActiveX-а есть методы и события. Например, метод About можно вызвать так:[/FONT]
[FONT=Arial]Form1->OleContainer1->OleObject.OleFunction(”About”);[/FONT]
[FONT=Arial]После вызова получаем окно About компонента.[/FONT]
[FONT=Arial]Можно вызвать метод с параметрами. Например, метод с одним параметром вызывается так:[/FONT]
[FONT=Arial]TAutoArgs<1> args;[/FONT]
[FONT=Arial]args[1] = par1; //где par1 значение параметра[/FONT]
[FONT=Arial]Form1->OleContainer1->OleObject.OleFunction(Имя метода,static_cast<TAutoArgsBase*>(&args));[/FONT]

[FONT=Arial]Вопрос как вызвать событие? Например, ActiveX имеет событие DblClick без параметров.[/FONT]
[FONT=Arial]Так вызвать нельзя:[/FONT]
[FONT=Arial]Form1->OleContainer1->OleObject.OleFunction(”DblClick&#8221;);[/FONT]
[FONT=Arial]Исключение пишет: ”Неизвестный тип&#8221;;[/FONT]
[FONT=Arial]И так тоже не проходит:[/FONT]
[FONT=Arial]Form1->OleContainer1->OleObject.OlePropertyGet(”DblClick&#8221;);[/FONT]

[FONT=Arial]Как программно вызвать на выполнение событие ActiveX-а? Имя события известно и сам ActiveX загружен в OleContainer.[/FONT]
246
17 января 2007 года
GIZMO
1.8K / / 30.07.2004
Цитата: lena_ki
[FONT=Arial][FONT=Arial]Как программно вызвать на выполнение событие ActiveX-а? Имя события известно и сам ActiveX загружен в OleContainer.[/FONT]



Fire_Event()

343
18 января 2007 года
lena_ki
282 / / 14.04.2005
Цитата: GIZMO
Fire_Event()



Что это за функция? Как ее применить?

2.1K
18 января 2007 года
vectoroc
234 / / 25.07.2006
COleControl::FireEvent
Fires a user-defined event from your control with any number of optional arguments
Usually this function should not be called directly. Instead you will call the event-firing functions in the event map section of your control's class declaration.

msdn...
343
18 января 2007 года
lena_ki
282 / / 14.04.2005
[FONT=Times New Roman][SIZE=3]Товарищи, кто-нибудь может привести конкретный пример, как ActiveX загруженный в OLE контейнер, может вызвать свое событие?[/SIZE][/FONT]
Как это сделать программно? Вот тут нашла http://rsdn.ru/article/qna/com/comevents.xml но не разобралась как под Builder адаптировать.

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог