Программирование на Атлантисе (VIP, FCOM, ARD), FastReport
Модераторы: m0p3e , edward_K , Модераторы
BlazeBio
Местный житель
Сообщения: 386 Зарегистрирован: 27 апр 2010, 14:31
Контактная информация:
Сообщение
BlazeBio » 13 янв 2011, 17:59
Возможно ли привязка события в cmInit встроенного интерфейса к событию в cmInit главного интерфейса(делаю alter)?
Пробывал:
Код: Выделить всё
//cmInit - главного интерфейса
cmInit:
{
inherited::handleEvent(cmInit);
if (GetVipRef(pINaklEventsNotifier, 'M_UP::INaklEventsNotifier'))
{
BindEvent (OnInit, pINaklEventsNotifier.OnInit) ;
BindEvent (OnDefault, pINaklEventsNotifier.OnDefault) ;
}
}
Код: Выделить всё
//сmInit - встроенного интерфейса
cmInit:
{
inherited::handleEvent(cmInit);
if (not NullVipRef(pINaklEventsNotifier))
{
pINaklEventsNotifier.FireEvent('OnInit');
message('cmInit');
}
cfsSetCurrentContainer('NAKL502.EDITSOPR.SCRHEADER');
cfsSetProp(cmValue8,'skip',true);
}
Так cmDefault отрабатывает(месага вылезает), а cmInit нет(нет месаги).
galover
Местный житель
Сообщения: 794 Зарегистрирован: 16 ноя 2007, 13:52
Сообщение
galover » 13 янв 2011, 19:09
встроенный, который embedded? Тогда cmOnVipLoad нужно юзать
BlazeBio
Местный житель
Сообщения: 386 Зарегистрирован: 27 апр 2010, 14:31
Контактная информация:
Сообщение
BlazeBio » 13 янв 2011, 19:13
galover писал(а): встроенный, который embedded? Тогда cmOnVipLoad нужно юзать
Да, embedded.
Так я юзал.
Код: Выделить всё
cmOnVipLoad :
{
Inherited:: HandleEvent(cmOnVipLoad);
GetVipRef(pINaklEventsNotifier, 'M_Up::INaklEventsNotifier');
}
galover
Местный житель
Сообщения: 794 Зарегистрирован: 16 ноя 2007, 13:52
Сообщение
galover » 13 янв 2011, 19:19
если честно вообще не уловил суть задачи, да и обрывки кода мало о чем говорят. Но вот в embedded интерфейсах cmInit не срабатывает
BlazeBio
Местный житель
Сообщения: 386 Зарегистрирован: 27 апр 2010, 14:31
Контактная информация:
Сообщение
BlazeBio » 13 янв 2011, 19:30
galover писал(а): если честно вообще не уловил суть задачи, да и обрывки кода мало о чем говорят. Но вот в embedded интерфейсах cmInit не срабатывает
Есть 5 кнопок во встроенном интерфейсе. Необходимо выставить skip в них в зависимости от статуса текущего документа.
Может конфигурационным скриптом попробывать, или лучше не стоит скриптом?
galover
Местный житель
Сообщения: 794 Зарегистрирован: 16 ноя 2007, 13:52
Сообщение
galover » 13 янв 2011, 19:36
Что есть "текущий документ"? Контейнер для embedded интерфейса (главный интерфейс)? В примере embedded гененерирует событие, зачем? Сорри, но все равно ничего не понял, лучше запостить полный текст исходников
galover
Местный житель
Сообщения: 794 Зарегистрирован: 16 ноя 2007, 13:52
Сообщение
galover » 13 янв 2011, 19:55
мне кажется ты намудрил с событиями, сделай глобальный объект, через который и передавай состояние из главного фейса в embedded или заюзай dsk
BlazeBio
Местный житель
Сообщения: 386 Зарегистрирован: 27 апр 2010, 14:31
Контактная информация:
Сообщение
BlazeBio » 13 янв 2011, 20:06
galover писал(а): мне кажется ты намудрил с событиями, сделай глобальный объект, через который и передавай состояние из главного фейса в embedded или заюзай dsk
Что намудрил, я это понял.
Вот как бы всё проще это сделать.
BlazeBio
Местный житель
Сообщения: 386 Зарегистрирован: 27 апр 2010, 14:31
Контактная информация:
Сообщение
BlazeBio » 13 янв 2011, 20:08
Я вам в личку исходник скинул.