GroupBox, Bevel, ScrollBox, Splitter
Панели Panelиспользуются наиболее широко. С их помощью компонуются различные элементы интерфейса (кнопки, окна редактирования, списки), функционально связанные друг с другом. Панели Panel могут также использоваться для организации инструментальных панелей, полос состояния и т.п.
Одним из назначений панелей является также группирование таких управляющих элементов, как RadioButton − радиокнопки. Все радиокнопки, расположенные на панели, работают как согласованная группа: в любой момент может быть выбрана только одна из них. Аналогично согласованной группой работают и расположенные на панели быстрые кнопки SpeedButton, если они имеют одинаковое значение свойства GroupIndex.
Внешний вид панели Panel определяется совокупностью параметров BevelInner −стиль внутренней части панели, BevelOuter − стиль внешней части панели, BevelWidth − ширина внешней части панели, BorderStyle − стиль бордюра, BorderWidth− ширина бордюра.
Разделитель Splitter предоставляет пользователю возможность перемещать границы, разделяющие различные панели, изменяя их относительные размеры. Разделитель имеет свойства Beveledи ResizeStyle, определяющие его вид, и свойство MinSize, ограничивающее минимальный размер панелей по обе стороны от разделителя.
Панель GroupBoxимеет встроенную рамку с надписью, которая обычно используется для выделения на форме группы функционально объединенных компонентов.
Компонент Bevelформально не является панелью, он не может служить контейнером для компонентов. Например, с помощью Bevel нельзя сгруппировать радиокнопки.
Стиль отображения Bevel определяется свойством Style, которое может принимать значения bsLowered −утопленный, и bsRaised −приподнятый. А контур компонента определяется свойством Shape, которое может принимать значения: bsBox − прямоугольник, bsFrame − рамка, bsSpacer − пунктирная рамка, bsTopLine, bsBottomLine, bsLeftLine, bsRightLine − соответственно верхняя, нижняя, левая и правая линии. В зависимости от значения Style линии могут быть утопленными или выступающими.
Панель с прокруткой ScrollBox предназначена для создания области, в которой могут размещаться компоненты, занимающие площадь большую, чем сам ScrollBox.Например, ScrollBox можно использовать для размещения длинных текстовых строк или больших инструментальных панелей, которые, исходя из соображений экономии площади окна, нецелесообразно отображать целиком. Если размеры ScrollBox меньше, чем размещенные компоненты, то появляются полосы прокрутки, которые позволяют пользователю перемещаться по всем размещенным в ScrollBox компонентам.
Разместить в пределах небольшой области ScrollBox большие компоненты или много компонентов, занимающих в сумме большую площадь, можно в процессе проектирования следующим образом. Размеры ScrollBox увеличивают временно так, чтобы в полосе прокрутки поместилось все, что нужно разместить, а затем сокращают размеры ScrollBox до требуемых.
Свойство BorderStyle определяет стиль рамки компонента ScrollBox. Свойство AutoScroll позволяет задать автоматическое появление необходимых полос прокрутки, если размер размещенных компонентов превышает размер области по горизонтали, вертикали или в обоих измерениях. Но можно и самим управлять появлением горизонтальной и вертикальной полос с помощью свойств HorzScrollBarи VertScrollBarсоответственно. В этом случае надо самим задавать ряд свойств полосы прокрутки и, прежде всего, Range −размер в пикселах прокручиваемой области. Значение перемещения при однократном нажатии пользователем кнопки прокрутки может рассчитываться компонентом автоматически исходя из размеров области и окна, если свойство Smooth установлено в true. В противном случае нужно задать величину единичного перемещения в свойстве Increment.
Многостраничные панели − компоненты TabControl,