InTouch и ActiveX

Вопросы, не попадающие в другие разделы.

InTouch и ActiveX

Сообщение skom » Вт ноя 25, 2008 10:25 pm

Добрый день, возникла следующая проблема:
для отображения трендов я использую Active Trend (из Active Factory) в виде ActiveX-объекта. Окно с трендом вызывается из quick-функции следующего вида:
Код: Выделить всё
{начало функции}
Show "Тренд";
#aaHistClientTrend2.FileOpen(InfoInTouchAppDir() + "\Trend\" + TagName + ".aaTrend");
TrendName.Name = TagName + "\Desc";
{конец функции}

Проблема состоит в том, что скрипт пытается записать в свойство FileOpen значение раньше чем ActiveX прогрузился на форме. Как бы вы решили подобную задачу?
P.S. я пробовал отслеживать состояние ActiveX в цикле, но InTouch выдает ошибку, что нельзя обращаться к объектам активикс в таких конструкциях. Версия InTouch 9.5.
skom
 
Сообщения: 173
Зарегистрирован: Вт окт 02, 2007 5:25 pm

Сообщение skom » Пт ноя 28, 2008 1:55 am

В итоге решил проблему следующим способом - поставил настройку в Window Viewer чтобы все окна хранились в оперативной памяти.
skom
 
Сообщения: 173
Зарегистрирован: Вт окт 02, 2007 5:25 pm

Сообщение Eraser » Пн дек 01, 2008 4:04 pm

может лучше прописать

#aaHistClientTrend2.FileOpen(InfoInTouchAppDir() + "\Trend\" + TagName + ".aaTrend");
TrendName.Name = TagName + "\Desc";

в стартовом скрипте окна, где расположен сам тренд? тогда уже компонент вроде как загружен
Eraser
 
Сообщения: 76
Зарегистрирован: Пт апр 18, 2008 12:33 pm

Сообщение skom » Вт дек 16, 2008 12:11 am

И я так думал, что загружен. Пришлось решить проблему достаточно дурацким способом - окна все храню в памяти, а не загружаю с диска (в настройках Window Viewer есть такая настройка) и при открытии проекта программно открываю и закрываю окно с трендом.
skom
 
Сообщения: 173
Зарегистрирован: Вт окт 02, 2007 5:25 pm


Вернуться в Другое

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 51