Partilhar via


Como: Responder a cliques nos botões de caixa de seleção do Windows Forms

Sempre que um usuário clica em um controle de CheckBox do Windows Forms, o evento Click ocorre. Você pode programar seu aplicativo para executar alguma ação, dependendo do estado da caixa de seleção.

Para responder aos cliques da CheckBox

  1. No manipulador de eventos Click, use a propriedade Checked para determinar o estado do controle e execute qualquer ação necessária.

    Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click  
       ' The CheckBox control's Text property is changed each time the
       ' control is clicked, indicating a checked or unchecked state.  
       If CheckBox1.Checked = True Then  
          CheckBox1.Text = "Checked"  
       Else  
          CheckBox1.Text = "Unchecked"  
       End If  
    End Sub  
    
    private void checkBox1_Click(object sender, System.EventArgs e)  
    {  
       // The CheckBox control's Text property is changed each time the
       // control is clicked, indicating a checked or unchecked state.  
       if (checkBox1.Checked)  
       {  
          checkBox1.Text = "Checked";  
       }  
       else  
       {  
          checkBox1.Text = "Unchecked";  
       }  
    }  
    
    private:  
       void checkBox1_CheckedChanged(System::Object ^ sender,  
          System::EventArgs ^ e)  
       {  
          if (checkBox1->Checked)  
          {  
             checkBox1->Text = "Checked";  
          }  
          else  
          {  
             checkBox1->Text = "Unchecked";  
          }  
       }  
    

    Observação

    Se o usuário tentar clicar duas vezes no controle CheckBox, cada clique será processado separadamente; ou seja, o controle CheckBox não oferece suporte ao evento double-click.

    Observação

    Quando a propriedade AutoCheck é true (o padrão), o CheckBox é automaticamente selecionado ou limpo quando é clicado. Caso contrário, você deve definir manualmente a propriedade Checked quando o evento Click ocorrer.

    Você também pode usar o controle CheckBox para determinar um curso de ação.

Para determinar um curso de ação quando uma caixa de seleção é clicada

  1. Utilize uma instrução case para consultar o valor da propriedade CheckState para determinar um curso de acção. Quando a propriedade ThreeState é definida como true, a propriedade CheckState pode retornar três valores possíveis, que representam a caixa que está sendo marcada, a caixa sendo desmarcada ou um terceiro estado indeterminado no qual a caixa é exibida com uma aparência esmaecida para indicar que a opção não está disponível.

    Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click  
       Select Case CheckBox1.CheckState  
          Case CheckState.Checked  
             ' Code for checked state.  
          Case CheckState.Unchecked  
             ' Code for unchecked state.  
          Case CheckState.Indeterminate  
             ' Code for indeterminate state.  
       End Select
    End Sub  
    
    private void checkBox1_Click(object sender, System.EventArgs e)  
    {  
       switch(checkBox1.CheckState)  
       {  
          case CheckState.Checked:  
             // Code for checked state.  
             break;  
          case CheckState.Unchecked:  
             // Code for unchecked state.  
             break;  
          case CheckState.Indeterminate:  
             // Code for indeterminate state.  
             break;  
       }  
    }  
    
    private:  
       void checkBox1_CheckedChanged(System::Object ^ sender,  
          System::EventArgs ^ e)  
       {  
          switch(checkBox1->CheckState) {  
             case CheckState::Checked:  
                // Code for checked state.  
                break;  
             case CheckState::Unchecked:  
                // Code for unchecked state.  
                break;  
             case CheckState::Indeterminate:  
                // Code for indeterminate state.  
                break;  
          }  
       }  
    

    Observação

    Quando a propriedade ThreeState é definida como true, a propriedade Checked retorna true para Checked e Indeterminate.

Ver também