Procedure: Menu-gebeurtenissen activeren voor werkbalkknoppen

Opmerking

Het ToolStrip besturingselement vervangt en voegt functionaliteit toe aan het ToolBar besturingselement; de ToolBar controle wordt echter behouden voor zowel achterwaartse compatibiliteit als toekomstig gebruik, indien u kiest.

Als uw Windows-formulier een ToolBar besturingselement met werkbalkknoppen bevat, wilt u weten op welke knop de gebruiker klikt.

Op de ButtonClick gebeurtenis van het besturingselement ToolBar kunt u de eigenschap Button van de ToolBarButtonClickEventArgs-klasse evalueren. In het onderstaande voorbeeld wordt een berichtvak weergegeven, waarmee wordt aangegeven op welke knop is geklikt. Zie MessageBoxvoor meer informatie.

In het onderstaande voorbeeld wordt ervan uitgegaan dat er een ToolBar controle is toegevoegd aan een Windows-venster.

De klikgebeurtenis op een werkbalk afhandelen

  1. Voeg in een procedure werkbalkknoppen toe aan het besturingselement 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->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);
       }
    
  2. Voeg een gebeurtenis-handler toe voor de ToolBar gebeurtenis van de ButtonClick besturingselement. Gebruik een instructie voor het schakelen tussen hoofdletters en kleine letters en de ToolBarButtonClickEventArgs-klasse om de werkbalkknop te bepalen waarop is geklikt. Geef op basis hiervan een geschikt berichtvak weer.

    Opmerking

    In dit voorbeeld wordt een berichtvak gebruikt als tijdelijke aanduiding. Voeg gerust andere code toe die moet worden uitgevoerd wanneer op de werkbalkknoppen wordt geklikt.

    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->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;
          }
       }
    

Zie ook