Публикация

Подписка на события ActiveX

Добрый день,
в этом примере я привожу альтернативный вариант подписки на события activeX компонента. Это своего рода call-back механизм, который удобно использовать в своих контролах, если функционал Terrasoft не позволяет что-то выполнить. Еще раз говорю, что это не стандартный, а альтернативный механизм со своими плюсами и конечно же минусами.
В архиве прикладываю библиотеку, написаную на C#, который содержит COM класс Callback с двумя методами Run и Exit и событием Callback. Класс запускает форму, которая содержит 2 поля, информация из которых возвращается скрипту по нажатию на клавишу. Для демо все что нужно, это сбилдить сборку - она сама зарегистрируется и в скрипте Террасофт написать:

var obj;
 
function Main() {
    obj = new ActiveXObject("TSCallback.Callback");
    var extendedCallbackEvents = obj.ExtendedCallbackEvents();
    extendedCallbackEvents.ScriptCallbackObject = obj_Callback;
    obj.Run();
}
 
function obj_Callback(message, data)
{
    ShowInformationDialog('Message: ' + message + ' Data: ' + data);
    obj.Exit();
}

Нравится

Поделиться

1 комментарий

Собственно библиотека:

Показать все комментарии