-
Вложений: 10
давайте по полочкам разложу. Что бы было проще общаться с поддержкой - был сделан элементарный библиотечный объект, состоящий из
1) SVG объекта (окно pTST). Простой прямоугольник с текстом. Динамизированы в нем 2 параметра, цвет прямоугольника и текстовое поле.
Вложение 59939
cTablo - цвет и vTablo - значение
Вложение 59940
2) Так как на SVG объекты нельзя накладывать стандартные контролы, то было создано стандартное окно oTST. На это окно был наложен объект pTST и стандартный прогресс
Вложение 59941
3) Для работы с объектом к нему был приделан программный интерфейс TSTint с параметрами
Вложение 59942
где pSTS - входной параметр состояния, в котором упакованы значения (для прогресса и текстового поля),
oV - выходной параметр с значением
oC - выходной параметр для цвета
процедурка выглядит так:
Вложение 59943
3) Так как при переносе объекта в проект параметры процедуры становятся недоступными, в объекте была сделана еще одна прокладка
переменные iP01, oP1,oP2. которые были связаны с параметрами процедуры
Вложение 59944
Ну по библиотечному объекту все. В дереве библиотеки он выглядит так:
Вложение 59945
4) Процедуру создания АРМ и главного окна я подробно не расписываю, как не относящиеся к теме.
Дерево проекта выглядит вот так.
Вложение 59946
Тут есть главное окно (Окно 1), добавлено 2 экземпляра библиотечного объекта pTST(pTST 1 и pTST2) и 2 параметра для управления объектами pTST - X1 и X2.
Экземпляы pTST и Параметры X1 и X2 размещены на ОКНО 1. Выглядит это так:
Вложение 59947
Параметр X1 и X2 связаны с параметрами iP01 экземпляров pTST 1 и pTST2
Уффф, долго писал. А теперь запускаем проект.
Вложение 59948
А вот это результат выполнения. Стандартные элементы отратывают, SVG объект слеп.
-
Ну вот, с поддержкой пообщался, общениие довольно сложно происходило. Но результат следующий.
Для SVG объектов нельзя устанавливать связь с элементами дерева. Только из дерева системы и только с экземплярами.
Т.е. объектную модель это рушит напрочь. Иначе говоря - нормальныцй библиотечный составной элемент с SVG объектом создать нельзя.
Делаете чистый SVG объект, клонируете на его основе нужное количество экземполяров и с экземплярами вяжете то что Вам нужно. Где то так.