Compartilhar via


Como responder a cliques em caixas de seleção no Windows Forms

Sempre que um usuário clica em um controle 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 de 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";  
          }  
       }  
    

    Nota

    Se o usuário tentar clicar duas vezes no controle CheckBox, cada clique será processado separadamente; ou seja, o controle CheckBox não dá suporte ao evento de clique duplo.

    Nota

    Quando a propriedade AutoCheck é true (o padrão), a CheckBox é automaticamente selecionada ou desmarcada quando clicada. Caso contrário, você deverá 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 de caso para consultar o valor da propriedade CheckState e determinar um curso de açã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 está indisponí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;  
          }  
       }  
    

    Nota

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

Consulte também