198______________________________________________Глава 3

Пример инструментальной панели и ее прокрутки             йЙ?",:..^6"  \:,?.,.. '.:.й'.. _
компонентом PageScroller                                   JbjiSS) |Ы &••-[ {Б~3-:В| I

Свойство Margin компонента PageScroller определяет размер полей в пиксе-
лях, которые оставляются между краем окна PageScroller и прокручиваемым
компонентом. По умолчанию эти поля равны нулю, но надо задать свойству Mar-
gin некоторое положительное значение. Иначе края прокручиваемого компонент
могут быть плохо видны.

Свойство AutoScroll определяет, должна ли прокрутка осуществляться авто-
матически, как только курсор мыши пройдет над кнопкой прокрутки. Вероятно,
лучше оставлять значение AutoScroll равным false, поскольку такая автоматиче-
ская прокрутка не очень удобна пользователю.

3.5.5 Перестраиваемые панели — компоненты CoolBar
и ControlBar

Перестраиваемые панели являются дальнейшим развитием инструменталь-
ных панелей. Только в перестраиваемых панелях сами инструментальные панели
обычно являются компонентами более сложных образований. Примером перестра-
иваемой панели может служить панель ИСР C++Builder 4, включающая в себя ряд
более мелких панелей быстрых кнопок и палитру компонентов. Пользователь мо-
жет настраивать их, изменять местоположение панелей и т.п.

Начнем рассмотрение с компонента CoolBar. Он позволяет строить перестраи-
ваемые панели, состоящие из полос (bands). В полосы могут включаться инстру-
ментальные панели ToolBar и любые другие оконные компоненты: окна редакти-
рования, панели и т.п. Каждый из этих компонентов снабжается средствами пере-
мещения его пользователем в пределах окна CoolBar. В полосы могут вставляться
и не оконные компоненты, например, метки. Но они не будут перемещаемыми.

Опробуйте в работе этот компонент. Поместите его на форму. Перенесите на
него другие компоненты, например, ToolBar и Edit. Когда вы размещаете на Cool-
Bar очередной компонент, ему отводится отдельная полоса и он растягивается на
всю ширину CoolBar. Около каждого компонента появляется слева полоска, за ко-
торую компонент можно перемещать. Например, взявшись за эту полоску вы мо-
жете переместить полосу вместе с ее компонентом в тот ряд, где уже имеется дру-
гой компонент. Тогда они расположатся в ряд один левее другого (см. пример на
рис. 3.33).

Пример перестраиваемой панели на основе     SiKIS'^^^^^J^^ }'-/::,   г,-- . , ;""i7 i ;l
компонента CoolBar                         ||^Панмь1 |тд— II ^ Панель 21 ^lilSAJ ||

| a^iai^aa^^^^affiii^s''^^^"^^^^^^^^    ............   ...... „^.Maij^-a^^-—————j-A.-^-j

11 Окно!'1^2I

I_________________________————u——————————————————————————————————————