Russian Belarusian English German Japanese Ukrainian

Controls

CuBook3.335

Описание

Свойство Controls является массивом всех дочерних компонентов данного оконного элемента. Дочерними являются те компоненты, которые расположены в клиентской области данного оконного элемента и в свойстве Parent, которых указан как родитель данный элемент. Параметр Index определяет * индекс соответствующего компонента. Индекс, начинающийся с 0, соответствует положению компонента в Z-последовательностн данного родительского элемента.
Свойство Controls обычно используется в итеративных процедурах групповой обработки дочерних компонентов, когда на них неудобно ссылаться по имени. В подобных итеративных процедурах обычно используется также свойство ControlCount, определяющее число дочерних компонентов.
 
Классы

TWinControl
 
Определение

property TControl* Controls[int Index]
 
Пример

Пусть в приложении в классе формы определена некоторая функция:
void __fastcall FuncfTObject *Sender);
которая обрабатывает объект, передаваемый в нее через аргумент Sender. Это может быть какая-то процедура изменения размеров и места расположения, окрашивания, перестановок и т.д. Например, она может содержать оператор:
((TControl *)Sender)->Left += 10;
сдвигающий объект на 10 пикселов вправо. Тогда обработать этой процедурой все дочерние компоненты, например, панели Panel1 можно с помощью оператора:
for(int i - 0; i < Fanel1->ControlCount; i++)
Func(Panel1->Controls[i]);
Свойство Controls предназначено только для чтения. Оно изменяется (точнее меняются индексы компонентов) при изменении Z-последовательности.
Изменить Z-последовательность в процессе проектирования можно, выполнением команд Bring То Front или Send То Воск. Первая из них пересылает выделенный компонент наверх, присваивая ему максимальный индекс, а вторая пересылает вниз, присваивая ему минимальный индекс (0 для неоконных компонентов и минимально возможный для оконных, поскольку всегда неоконные компоненты имеют индекс меньше оконных). Выполнить эти команды можно или из раздела меню Edit, или щелкнув правой кнопкой мыши и выбрав их из всплывающего меню.
Программно место компонента в Z-последовательности можно изменить методами BrineToFront и SendToBack. На Z-последовательвость влияют также методы InsertControl и RemovteCoijtrol, добавляющие и удаляющие дочерние компоненты, и изменение свойства компонентов Parent, меняющее родителя компонента.
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

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