Если свойство

property Flat: Boolean;

установлено в значение True, внешний вид панели инструментов становится более "модным" - плоским. В этом случае границы кнопок не видны, и все они выглядят как набор надписей и рисунков на единой плоской панели. Границы становятся видны, только когда над кнопкой находится указатель мыши. Можно при этом изменить и внешний вид кнопки. Если задано значение свойства Hotimages, то на текущей кнопке обычная картинка из images меняется на картинку из Hotimages. Посмотрите, например, на панель Microsoft Internet Explorer 4 и старшей версии - там все картинки на кнопках серые, но кнопка, к которой подведен указатель мыши, становится цветной.

(_Примечание ^

Возможность сделать панель инструментов плоской появилась в версии 4.70 библиотеки ComCtl32.dll. Распространяя приложение, не забудьте поставить с дистрибутивами эту библиотеку нужной версии.

Текст и картинка на кнопке могут располагаться друг относительно друга двумя способами, в зависимости от значения свойства List. Если свойство List равно значению False (установка по умолчанию), то картинка располагается сверху, текст - снизу. В противном случае вы увидите текст справа от картинки.

Панели инструментов - это контейнеры, но и они часто располагаются на контейнерах - компонентах TCoolBar и TControlBar. Те, как правило, имеют свою фоновую картинку, и располагающийся сверху компонент TTooiBar можно сделать прозрачным. За это отвечает свойство:

property Transparent: Boolean;

Особенно удобно использовать его, если установлен режим плоской панели - в этом случае прозрачен не только фон самой панели, но и всех кнопок на ней.

Перейдем к рассмотрению функциональных возможностей кнопок. Вы думаете, что "функциональные возможности" - это громко сказано? С одной стороны, да: кнопка - это то, на что нажимает пользователь, и не более того. Главное событие и для кнопки TToolButton, и для панели TToolBar - событие Onclick. Кроме него они могут отреагировать только на перемещение мыши и на процессы перетаскивания/присоединения (Drag-and-Drop, Drag-and-Dock; описанные ниже в этой главе).

С другой стороны, кнопки можно нажимать в разнообразных вариантах и сочетаниях. Ключ к выбору варианта - свойство style объекта TTooiButton:

type TToolButtonStyle = (tbsButton, tbsCheck, tbsDropDown, tbsSeparator, tbsDivider);
property Style: TToolButtonStyle;

Стили tbsSeparator и tbsDivider предназначены для оформления панели и представляют собой пустое место и вертикальный разделитель соответственно. Обычная КНОПКа- ЭТО, ПОНЯГНОе дело, СТИЛЬ tbsButton.

Если вы хотите создать одну или несколько кнопок, "залипающих" после нажатия, выберите стиль tbsCheck. После щелчка такая кнопка остается в нажатом состоянии до следующего нажатия. Об ее состоянии говорит свойство:

property Down: Boolean;

Если нужна группа кнопок, из которых только одна может пребывать в нажатом состоянии, следует воспользоваться свойством:

property Grouped: Boolean;

Такая группа называется группой с зависимым нажатием. Если на панели инструментов есть ряд расположенных подряд кнопок с style=tbscheck и Grouped=True, то этот ряд будет обладать свойствами группы с зависимым нажатием. Если групп зависимых кнопок должно быть две и более, разделить Ж между СОбоЙ МЗКНЭ КНОПКОЙ ДРЖГО СМШ (например, tbsSeparator или tbsDivider) или любым другим элементом управления (рис. 5.1).


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в Delphi 7



Новости за месяц

  • Декабрь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31