getobj

Функция получения идентификатора объекта в графическом контейнере по заданному индексу.

Синтаксис:

obj_id = getobj(indx);
obj_id = getobj(contid, indx);

Аргументы:

indx – номер блока, целое число, начиная с единицы, соответствующее положению блока в порядке перерисовки,

conid – идентификатор графического контейнера, внутри которого расположен объект с номером indx.

Описание:

getobj(indx) – функция получения идентификатора (ссылки) объекта (блока на схеме или другого графического объекта) по номеру блока. Если объект находится не в текущем графическом контейнере, то следует указать сначала идентификатор графического контейнера, внутри которого расположен объект: getobj(contid, indx). indx начинается с единицы и соответствует номеру, начинаю сверху, имени блока в списке «Порядок перерисовки», который доступен по нажатию одноименной кнопки на панели инструментов «Правка».

Результат:

obj_id – идентификатор объекта, имеющий специфический тип указателя на объект.

Пример:

var i,id;
initialization //начальная инициализация
i = 1;
while i <= getobjcount do begin //для всех объектов на схеме
id = getobj(i); //получаем идентификатор объекта
//получаем значение свойства tag объекта
if getprop(id, "tag") = 1 then begin      
//изменим значения свойств
setprop(id,"tbl_name",submodel.tbl_name);
setprop(id,"ob_name",submodel.ob_name);
end;
i = i + 1;  
end;                 
end;

В результате выполнения данного скрипта всем блокам субмодели, свойство tag которых выставлено пользователем в 1, будут присвоены значения свойств tbl_name и ob_name, взятые из аналогичных свойств субмодели (т.е. из блока более высокого уровня, чем уровень вложенности данных блоков).

Сопутствующие материалы