Си шарп панель инструментов

Меню и панели инструментов

Элемент ToolStrip представляет панель инструментов. Каждый отдельный элемент на этой панели является объектом ToolStripItem .

Ключевые свойства компонента ToolStrip связаны с его позиционированием на форме:

  • Dock : прикрепляет панель инструментов к одной из сторон формы
  • LayoutStyle : задает ориентацию панели на форме (горизонтальная, вертикальная, табличная)
  • ShowItemToolTips : указывает, будут ли отображаться всплывающие подсказки для отдельных элементов панели инструментов
  • Stretch : позволяет растянуть панель по всей длине контейнера

В зависимости от значения свойства LayoutStyle панель инструментов может располагаться по горизонтали, или в табличном виде:

  • HorizontalStackWithOverflow : расположение по горизонтали с переполнением — если длина панели превышает длину контейнера, то новые элементы, выходящие за границы контейнера, не отображаются, то есть панель переполняется элементами
  • StackWithOverflow : элементы располагаются автоматически с переполнением
  • VerticalStackWithOverflow : элементы располагаются вертикально с переполнением
  • Flow : элементы располагаются автоматически, но без переполнения — если длина панели меньше длины контейнера, то выходящие за границы элементы переносятся, а панель инструментов растягивается, чтобы вместить все элементы
  • Table : элементы позиционируются в виде таблицы

Если LayoutStyle имеет значения HorizontalStackWithOverflow / VerticalStackWithOverflow , то с помощью свойства CanOverflow мы можем задать поведение при переполнении. Так, если это свойство равно true (значение по умолчанию), то для элементов, не попадающих в границы ToolStrip, создается выпадающий список:

При значении false подобный выпадающий список не создается.

Типы элементов панели и их добавление

Панель ToolStrip может содержать объекты следующих классов

Читайте также:  Python convert string to argument

DropDownButton in ToolStrip in C#

  • ToolStripLabel : текстовая метка на панели инструментов, представляет функциональность элементов Label и LinkLabel
  • ToolStripButton : аналогичен элементу Button.Также имеет событие Click, с помощью которого можно обработать нажатие пользователя на кнопку
  • ToolStripSeparator : визуальный разделитель между другими элементами на панели инструментов
  • ToolStripToolStripComboBox : подобен стандартному элементу ComboBox
  • ToolStripTextBox : аналогичен текстовому полю TextBox
  • ToolStripProgressBar : индикатор прогресса, как и элемент ProgressBar
  • ToolStripDropDownButton : представляет кнопку, по нажатию на которую открывается выпадающее меню К каждому элементу выпадающего меню дополнительно можно прикрепить обработчик нажатия и обработать клик по этим пунктам меню
  • ToolStripSplitButton : объединяет функциональность ToolStripDropDownButton и ToolStripButton

Добавить новые элементы можно в режиме дизайнера:

ToolBar in C#

Также можно добавлять новые элементы программно в коде. Их расположение на панели инструментов будет соответствовать порядку добавления. Все элементы хранятся в ToolStrip в свойстве Items. Мы можем добавить в него любой объект класса ToolStripItem (то есть любой из выше перечисленных классов, так как они наследуются от ToolStripItem):

public partial class Form1 : Form < public Form1() < InitializeComponent(); ToolStripButton clearBtn = new ToolStripButton(); clearBtn.Text = "Clear"; // устанавливаем обработчик нажатия clearBtn.Click += btn_Click; toolStrip1.Items.Add(clearBtn); >void btn_Click(object sender, EventArgs e) < MessageBox.Show("Производится удаление"); >>

Кроме того, здесь задается обработчик, позволяющий обрабатывать нажатия по кнопки на панели инструментов.

Элементы ToolStripButton, ToolStripDropDownButton и ToolStripSplitButton могут отображать как текст, так и изобажения, оибо сразу и то, и другое. Для управления размещением изображений в этих элементах имеются следующие свойства:

  • DisplayStyle : определяет, будет ли отображаться на элементе текст, или изображение, или и то и другое.
  • Image : указывает на само изображение
  • ImageAlign : устанавливает выравнивание изображения относительно элемента
  • ImageScaling : указывает, будет ли изображение растягиваться, чтобы заполнить все пространство элемента
  • ImageTransparentColor : указывает, будет ли цвет изображения прозрачным

Чтобы указать разместить изображение на кнопке, у свойства DisplayStyle надо установить значение Image . Если мы хотим, чтобы кнопка отображала только текст, то надо указать значение Text , либо можно комбинировать два значения с помощью другого значения ImageAndText :

Все эти значения хранятся в перечислении ToolStripItemDisplayStyle . Также можно установить свойства в коде c#:

ToolStripButton clearBtn = new ToolStripButton(); clearBtn.Text = "Поиск"; clearBtn.DisplayStyle = ToolStripItemDisplayStyle.ImageAndText; clearBtn.Image = Image.FromFile(@"D:\Icons\0023\search32.png"); // добавляем на панель инструментов toolStrip1.Items.Add(clearBtn);

Источник

Общие сведения об элементе управления ToolStrip (Windows Forms)

Элемент управления ToolStrip в Windows Forms и связанные с ним классы предоставляют общую платформу для объединения элементов пользовательского интерфейса в панели инструментов, строки состояния и меню. Элементы управления ToolStrip предоставляют широкие возможности во время разработки, включая активацию и редактирование на месте, пользовательский макет и стыковку, которая является возможностью панелей инструментов совместно использовать горизонтальное или вертикальное пространство.

Хотя элемент управления ToolStrip заменяет элемент управления предыдущих версий и расширяет его функциональные возможности, однако при необходимости элемент управления ToolBar можно сохранить для обратной совместимости и использования в будущем.

Функции элементов управления ToolStrip

Используйте элемент управления ToolStrip для выполнения следующих задач:

  • Представление общего пользовательского интерфейса между контейнерами.
  • Создание легко настраиваемых и часто используемых панелей инструментов, которые поддерживают расширенные функции пользовательского интерфейса и макета, такие как закрепление, стыковка, кнопки с текстом и изображениями, раскрывающиеся кнопки и элементы управления, кнопки переполнения и изменение порядка элементов ToolStrip во время выполнения.
  • Поддержка переполнения и изменения порядка элементов во время выполнения. Функция переполнения перемещает элементы в раскрывающееся меню, если в ToolStrip недостаточно места для их отображения.
  • Поддержка типичного внешнего вида и поведения операционной системы с помощью общей модели отрисовки.
  • Согласованная обработка событий для всех контейнеров и содержащихся элементов так же, как ведется обработка событий для других элементов управления.
  • Перетаскивание элементов из одного ToolStrip в другой или внутри ToolStrip.
  • Создание раскрывающихся элементов управления и редакторов типов пользовательского интерфейса с расширенными макетами в ToolStripDropDown.

Использование класса ToolStripControlHost для работы с другими элементами управления в ToolStrip и получения для них функциональных возможностей ToolStrip.

Вы можете расширить функциональные возможности и изменить внешний вид и поведение с помощью ToolStripRenderer, ToolStripProfessionalRenderer и ToolStripManager вместе с перечислениями ToolStripRenderMode и ToolStripManagerRenderMode.

Элемент управления ToolStrip является настраиваемым и расширяемым. Он предоставляет множество свойств, методов и событий для настройки внешнего вида и поведения. Ниже приведены некоторые важные элементы.

Важные элементы ToolStrip

Имя Описание
Dock Возвращает или задает край родительского элемента, к которому прикрепляется ToolStrip.
AllowItemReorder Возвращает или задает значение, указывающее, будут ли операции перетаскивания и переупорядочения элементов обрабатываться классом ToolStrip в закрытом режиме.
LayoutStyle Возвращает или задает значение, указывающее, как ToolStrip выполняет размещение своих элементов.
Overflow Возвращает или задает значение, указывающее, присоединен ли ToolStripItem к ToolStrip или ToolStripOverflowButton, или он может перемещаться между ними.
IsDropDown Возвращает значение, указывающее, отображает ли ToolStripItem другие элементы в раскрывающемся списке при щелчке ToolStripItem.
OverflowButton Возвращает значение элемента ToolStripItem, который является кнопкой переполнения для элемента управления ToolStrip с включенной функцией переполнения.
Renderer Возвращает или задает ToolStripRenderer, используемый для настройки внешнего вида и поведения ToolStrip.
RenderMode Возвращает или задает стили оформления для элемента управления ToolStrip.
RendererChanged Используется при изменении свойства Renderer.

Гибкость элемента управления ToolStrip обеспечивается за счет использования ряда сопутствующих классов. Ниже приведены некоторые из наиболее примечательных.

Важные сопутствующие классы ToolStrip

Имя Description
MenuStrip Заменяет класс MainMenu и расширяет его функциональные возможности.
StatusStrip Заменяет класс StatusBar и расширяет его функциональные возможности.
ContextMenuStrip Заменяет класс ContextMenu и расширяет его функциональные возможности.
ToolStripItem Абстрактный базовый класс, который управляет событиями и структурой всех элементов, которые могут содержаться в элементах управления ToolStrip, ToolStripControlHost или ToolStripDropDown.
ToolStripContainer Предоставляет контейнер с панелью на каждой стороне формы, в которой элементы управления можно упорядочить различными способами.
ToolStripRenderer Выполняет функции рисования для объектов ToolStrip.
ToolStripProfessionalRenderer Предоставляет внешний вид в стиле Microsoft Office.
ToolStripManager Управляет отрисовкой и нависанием элемента управления ToolStrip, а также слиянием объектов MenuStrip, ToolStripDropDownMenu и ToolStripMenuItem.
ToolStripManagerRenderMode Задает стиль рисования (пользовательский, Windows XP или Microsoft Office Professional), применяемый к нескольким объектам ToolStrip, содержащимся в форме.
ToolStripRenderMode Задает стиль рисования (пользовательский, Windows XP или Microsoft Office Professional), применяемый к одному объекту ToolStrip, содержащемуся в форме.
ToolStripControlHost Размещает другие элементы управления, которые не являются конкретными элементами управления ToolStrip, но для которых вам нужна функциональность ToolStrip.
ToolStripItemPlacement Указывает, следует ли размещать ToolStripItem в основном ToolStrip, в ToolStrip переполнения или ни там, ни там.

См. также раздел

Источник

Элемент управления ToolStrip (Windows Forms)

Элементы управления ToolStrip — это панели инструментов, на которых можно разместить меню, элементы управления и пользовательские элементы управления в приложениях Windows Forms.

в этом разделе

Общие сведения об элементе управления ToolStrip
Описание элемента управления, его основных возможностей и свойств.

Практическое руководство. Выход из элемента управления ToolStrip с помощью клавиши TAB
Описание способа перехода в пределах ToolStrip и перехода от него к следующему элементу управления в последовательности перехода.

Практическое руководство. Отслеживание наведения указателя мыши на элемент ToolStripItem
Описывается, как настроить элементы ToolStrip для обнаружения наведения указателя мыши на них без необходимости синхронизации различных событий мыши.

Практическое руководство. Создание профессионально оформленного элемента управления ToolStrip
Описание использования класса ToolStripProfessionalRenderer для создания составного элемента управления, напоминающего область навигации в Microsoft® Outlook®.

Практическое руководство. Реализация пользовательского класса, производного от ToolStripRenderer
Описывается способ настройки внешнего вида элемента управления ToolStrip, который можно настроить путем реализации класса, производного от ToolStripRenderer.

Справочник

Класс ToolStrip
Описание класса и всех его членов.

ToolStrip
Описывает класс ToolStrip и содержит ссылки на все его члены.

ToolStripItem
Описывает класс ToolStripItem и содержит ссылки на все его члены.

См. также

Элементы управления для использования в Windows Forms
Полный список элементов управления Windows Forms со ссылками на информацию об их применении.

Источник

Оцените статью