Доступ к формам в других панелях и модулях

Графические объекты могут быть доступны не только на локальной панели, но и в других модулях или панелях одного и того же менеджера интерфейса пользователя.

IconПРИМЕР

На примере ниже панель «PanelEllipse.pnl» открывает модуль «ModuleEllipse», а цвет формы «MyEllipse» устанавливается на другой панели (см. второй пример).

main()
{
   ModuleOnWithPanel(«ModuleEllipse», 50, 50, 70, 70, 2, 2, «None», «PanelEllipse»,     «PanelEllipse», makeDynString());
}

Следующие команды «setValue()» задают цвет фона и основной цвет для графического объекта «MyEllipse» на панели с названием «PanelEllipse» («Ellipse» — это имя панели в таблице параметров, а «PanelEllipse» — это имя файла панели).

Синтаксис команды «setValue()» следующий:

setValue(«moduleName.panelName:shapeName»,»property»,»value»);

Первый параметр функции «setValue()» — это имя формы. Второй это атрибут (свойство) графического объекта, а третий параметр — это действительное значение.

caution.gifВНИМАНИЕ

Если необходим доступ к формам в других панелях и модулях, не используйте точки и двоеточия в именах панелей.

main()
{
   setValue(«ModuleEllipse.PanelEllipse:MyEllipse»,»foreCol»,»Red»);   setValue(«ModuleEllipse.PanelEllipse:MyEllipse»,»backCol»,»Black»);
}

На примере ниже показан способ доступа к панелям внутри фактической панели без необходимости ручного указания имени панели в функциональном запросе. Использование функций «myModulName()» и «myPanelName()» — это лучший способ установления ссылок на уже инициализированные объекты.

main()
{
  setValue( myModuleName() + «.» + myPanelName() + «:PANEL_REF1.DPname», «text», myDPE);
}

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *