Как определить состав объектов в скрипте

отредактировано 20:26 Раздел: FastReport 3.0
Здравствуйте!
Вопрос дилетанта 2:
В скрипте отчета требуется выполнить некие однотипные действия над группой объектов (например, увеличить TOP на заданное значение)
При большом количестве таких объектов скрипт большой. Все объекты относятся к одному владельцу(листу, бэнду...) (т.е. дочерние к нему).
Вопрос: Как перебрать всех членов множества каким-нить For, For Each либо еще каким-то способом.
Хорошо бы это сделать и для сгруппированных объектов, то есть для некоего GroupIndex.

Комментарии

  • отредактировано 20:26
    Отвечу сам :)

    <!--fonto:Courier New--><span style="font-family:Courier New"><!--/fonto-->
    procedure Page1OnBeforePrint(Sender: TfrxComponent);
    var i:integer;
    oo:variant;
    begin

    for i:= 0 to page1.objects.count-1 do begin
    oo:= page1.objects;
    showmessage( oo.ClassName() + ' '+oo.Name );
    showmessage( oo.GroupIndex );
    oo.top := oo.top+10*i
    end;
    end;<!--fontc--></span><!--/fontc-->

    Для Группированных ( GroupIndex не отображается инспектором в свойствах объектов и какое конкретное значение он имеет - кто знает) лучше изменить им например Tag,Description или TagStr (я не знаю, на что эти св-ва могут повлиять :) ) Тогда их можно визуально контролировать без обеспечения,правда, уникальности значения для разных группировок.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.