Создает пользовательских Инструментальный объект ToolBar.

ToolBar

Expand imageКомментарии

Рекомендуется использовать рассматриваемый объект ToolBar для создания классических Инструментальных Линеек (панелей) в вашем Приложении.

В следующем списке описываются основополагающие Свойства и Характеристики пользовательских ToolBar-ов:

  • Toolbars всегда размещаются на переднем плане.

  • Toolbars всегда автоматически прикрепляются к верхней части главного Окна системы Visual FoxPro, при перемещении их ближе к верхнему краю.

  • Если ToolBar не закреплен, то он имеет половинную высоту Заголовка.

  • Если динамически изменяются размеры контейнера ToolBar, дочерние объекты перестраиваются автоматически.

  • Вы можете свободно перетаскивать рассматриваемый Контейнер Инструментов, если "зацепите" его за свободное место, не занятое Управляющим Элементом.

  • Многие Контролы, размещенные в данном Контейнере, не получают Фокус при его Активации, необходимое действие выполняется, а фокус - возвращается вызывающему элементу.

  • Горячие клавиши, определенные для дочерних Контролов Контейнера - отключаются (Disabled).

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

Дополнительную информацию о деталях создания инструментальных панелей ToolBars смотрите в разделе: Разработка Меню и Toolbars.

Expand imageПример

В представленном далее примере, демонстрируется создание пользовательского Инструментария toolbar, основанного на классе Toolbar. Visual FoxPro перестраивает автоматически командные кнопки, когда ToolBar изменяет свои размеры. Когда создается объект ToolBar, Visual FoxPro автоматически размещает дочерние объекты рассматриваемого Контейнера, слева-на право, в порядке их создания в этом контейнере, при этом значения свойст Top / Left дочерних объектов игнорируются.

 CopyCode imageКопировать Код
PUBLIC tbrDesktop
tbrDesktop = CREATEOBJ('myToolBar')
tbrDesktop.Show

DEFINE CLASS myToolBar AS Toolbar
ADD OBJECT btnBold AS CommandButton
ADD OBJECT sep1 AS Separator
ADD OBJECT btnItalics AS CommandButton

btnBold.Height = 20
btnBold.Width = 50You need to ensure that the images used are sized correctly to
fit within the space of a single list box item, which differs with the
FontSize of the list.
btnBold.Caption = "Bold"
btnItalics.Height = 20
btnItalics.Width = 50
btnItalics.Caption = "Italic"
btnItalics.FontBold = .F.

Left = 1
Top = 1
Width = 25

Caption = "Desktop Attributes"

PROCEDURE Activate
this.btnBold.FontBold = _SCREEN.FontBoldYou need to ensure that the images used are sized correctly to
fit within the space of a single list box item, which differs with the
FontSize of the list.
this.btnItalics.FontItalic = _SCREEN.FontItalic
ENDPROC

PROCEDURE btnBold.Click
_SCREEN.FontBold = !_SCREEN.FontBold
This.FontBold =_SCREEN.FontBold
ENDPROC

PROCEDURE btnItalics.CLICK
_SCREEN.FontItalic = !_SCREEN.FontItalic
This.FontItalic = _SCREEN.FontItalic
ENDPROC
ENDDEFINE

Expand imageСм. также