如何:触发工具栏按钮的菜单事件
更新:2007 年 11 月
说明: |
---|
ToolStrip 控件替换了 ToolBar 控件并添加了功能;但是也可选择保留 ToolBar 控件以备向后兼容和将来使用。 |
如果 Windows 窗体有带工具栏按钮的 ToolBar,则需要知道用户单击了哪个按钮。
对于 ToolBar 控件的 ButtonClick 事件,可以计算 ToolBarButtonClickEventArgs 类的 Button 属性。下面的示例中显示一个消息框,该框指示单击了哪个按钮。有关详细信息,请参见 MessageBox 类。
下面的示例假定已向 Windows 窗体添加了一个 ToolBar 控件。
处理工具栏上的 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); }
为 ToolBar 控件的 ButtonClick 事件添加事件处理程序。使用 Case 开关语句和 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; } }