Практическое руководство. Генерирование событий меню для кнопок элемента управления Toolbar
Обновлен: Ноябрь 2007
Примечание. |
---|
Элемент управления ToolStrip заменяет элемент управления ToolBar и расширяет его функциональные возможности; однако при необходимости элемент управления ToolBar можно сохранить для обратной совместимости и использования в будущем. |
Если в форме Windows Forms существует элемент управления ToolBar с кнопками панели инструментов, необходимо знать, какую кнопку нажимает пользователь.
В событии ButtonClick элемента управления ToolBar можно оценить свойство ButtonToolBarButtonClickEventArgs класса. В приведенном ниже примере представлено окно сообщения, показывающее, какая кнопка была нажата. Дополнительные сведения см. в разделе Класс MessageBox.
В примере, представленном ниже, подразумевается, что элемент управления ToolBar добавлен в форму Windows Forms.
Чтобы обработать событие Click в панели инструментов
В процедуре добавьте кнопки в элемент управления ToolBar.
Public Sub ToolBarConfig() ' Instantiate the toolbar buttons, set their Text properties ' and add them to the ToolBar control. ToolBar1.Buttons.Add(New ToolBarButton("One")) ToolBar1.Buttons.Add(New ToolBarButton("Two")) ToolBar1.Buttons.Add(New ToolBarButton("Three")) ' Add the event handler delegate. AddHandler ToolBar1.ButtonClick, AddressOf Me.ToolBar1_ButtonClick End Sub
public void ToolBarConfig() { toolBar1.Buttons.Add(new ToolBarButton("One")); toolBar1.Buttons.Add(new ToolBarButton("Two")); toolBar1.Buttons.Add(new ToolBarButton("Three")); toolBar1.ButtonClick += new ToolBarButtonClickEventHandler(this.toolBar1_ButtonClick); }
public void ToolBarConfig() { toolBar1.get_Buttons().Add(new ToolBarButton("One")); toolBar1.get_Buttons().Add(new ToolBarButton("Two")); toolBar1.get_Buttons().Add(new ToolBarButton("Three")); toolBar1.add_ButtonClick(new ToolBarButtonClickEventHandler(this.toolBar1_ButtonClick)); }
public: void ToolBarConfig() { toolBar1->Buttons->Add(gcnew ToolBarButton("One")); toolBar1->Buttons->Add(gcnew ToolBarButton("Two")); toolBar1->Buttons->Add(gcnew ToolBarButton("Three")); toolBar1->ButtonClick += gcnew ToolBarButtonClickEventHandler(this, &Form1::toolBar1_ButtonClick); }
Добавьте обработчик для события ButtonClick элемента управления ToolBar. Используйте оператор переключения регистра и класс ToolBarButtonClickEventArgs, чтобы определить, какая кнопка панели инструментов была нажата. В соответствии с результатом отобразите окно сообщения.
Примечание. Окно сообщения в этом примере использовалось исключительно в качестве шаблона. Конечно, можно добавить любой другой код, который должен выполняться при нажатии кнопки панели инструментов.
Protected Sub ToolBar1_ButtonClick(ByVal sender As Object, _ ByVal e As ToolBarButtonClickEventArgs) ' Evaluate the Button property of the ToolBarButtonClickEventArgs ' to determine which button was clicked. Select Case ToolBar1.Buttons.IndexOf(e.Button) Case 0 MessageBox.Show("First toolbar button clicked") Case 1 MessageBox.Show("Second toolbar button clicked") Case 2 MessageBox.Show("Third toolbar button clicked") End Select End Sub
protected void toolBar1_ButtonClick(object sender, ToolBarButtonClickEventArgs e) { // Evaluate the Button property of the ToolBarButtonClickEventArgs // to determine which button was clicked. switch (toolBar1.Buttons.IndexOf(e.Button)) { case 0 : MessageBox.Show("First toolbar button clicked"); break; case 1 : MessageBox.Show("Second toolbar button clicked"); break; case 2 : MessageBox.Show("Third toolbar button clicked"); break; } }
protected void toolBar1_ButtonClick(System.Object sender, ToolBarButtonClickEventArgs e) { // Evaluate the Button property of the ToolBarButtonClickEventArgs // to determine which button was clicked. switch(toolBar1.get_Buttons().IndexOf(e.get_Button())) { case 0 : MessageBox.Show("First toolbar button clicked"); break; case 1 : MessageBox.Show("Second toolbar button clicked"); break; case 2 : MessageBox.Show("Third toolbar button clicked"); break; } }
protected: void toolBar1_ButtonClick(System::Object ^ sender, ToolBarButtonClickEventArgs ^ e) { // Evaluate the Button property of the ToolBarButtonClickEventArgs // to determine which button was clicked. switch (toolBar1->Buttons->IndexOf(e->Button)) { case 0 : MessageBox::Show("First toolbar button clicked"); break; case 1 : MessageBox::Show("Second toolbar button clicked"); break; case 2 : MessageBox::Show("Third toolbar button clicked"); break; } }
См. также
Задачи
Практическое руководство. Добавление кнопок в элемент управления ToolBar
Практическое руководство. Определение значка для кнопки элемента управления ToolBar