Ir para conteúdo
Fórum Script Brasil
  • 0

Se clicar no textbox1 (txtCpf) ou textbox2 (txtCnpj), e obrigar a selecionar o OptionButton1 ou 2


Mordomo

Pergunta

Boa noite,

Tenho uma tela de cadastro de contribuintes, e nela tem OptionButton1 (pessoa física) e OptionButton2 (pessoa jurídica). Quando abro o frmCadCli, dá o foco no txtCpf e txt Cnpj. 

Preciso de uma função que ao clicar no txtCpf ou txtCnpj, apareça uma mensagem obrigando a pessoa a selecionar primeiramente uma das opções (OptionButton1 ou 2), pois só selecionando que funcionará a função de verificar CPF/CNPJ. Enfim, não aceitar digitar cpf ou cnpj sem selecionar uma das opções.

Por enquanto se não selecionar nenhum dos OptionButton e colocar qualquer cpf ou cnpj errado, o sistema aceita e cadastra.

Também preciso de uma função que ao clicar no txtSalvar, dá uma mensagem obrigando a preencher todos os campos, caso ficar algum sem ser preenchido. Só salvará se preencher todos. (txtNome, txtEnd, txtBairro, txtCep e assim por diante)

Aguardo retorno de vocês, 

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Coloque assim:

Vou te recomendar uma função bem legal. Quando a pessoa clicar no RadioButton 1, o txtCPF irá aparecer, se clicar no RadioButton 2, o txtCPF some e aparece o txtCNPJ, que tal?
 

Antes de tudo!
Propriedades do txt_CPF e txt_CNPJ + lbl_CPF e lbl_CNPJ > Visible = False

Clique duplo no rb_cpf:

    Private Sub rb_cpf_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rb_cpf.CheckedChanged
        If rb_cpf.Checked = True Then
            lbl_CPF.Visible = True
            txt_CPF.Visible = True
        Else
            lbl_CPF.Visible = False
            txt_CPF.Visible = False
        End If
    End Sub
Clique duplo no rb_cnpj:

    Private Sub rb_cnpj_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rb_cnpj.CheckedChanged
        If rb_cnpj.Checked = True Then
            lbl_CNPJ.Visible = True
            txt_CNPJ.Visible = True
        Else
            lbl_CNPJ.Visible = False
            txt_CNPJ.Visible = False
        End If
    End Sub

 

No botão pra verificação:

    Private Sub btn_AddCli_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_AddCli.Click
        If rb_cnpj.Checked = False Or rb_cpf.Checked = False Then
            MessageBox.Show("Antes de prosseguir, selecione uma das opções.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error)
            rb_cpf.Focus()
        ElseIf txtNome.text = "" Then
            MessageBox.Show("Preencha um nome antes de prosseguir.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
            txtNome.Focus()
        ElseIf txtEnd.text = "" Then
            MessageBox.Show("Preencha um endereço antes de prosseguir.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
            txtEnd.Focus()
        ElseIf txtBairro.text = "" Then
            MessageBox.Show("Preencha um bairro antes de prosseguir.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
            txtBairro.Focus()
        ElseIf txtCep.text = "" Then
            MessageBox.Show("Preencha um CEP antes de prosseguir.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
            txtCep.focus()
        ElseIf txtNome.text = "" And txtEnd.text = "" And txtBairro.text = "" And txtCep.text = "" Then
            MessageBox.Show("Você não pode prosseguir sem preencher todos os campos.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
        Else
            {FUNÇÃO DE ADD CLIENTE AQUI}
            MessageBox.Show("Cliente" + " " + txtNome.text + " " + "adicionado com sucesso no sistema.", "Sucesso", MessageBoxButtons.OK, MessageBoxIcon.Information)
        End If
    End Sub

 

Na questão do usuário colocar um CPF/CNPJ errado, pode-se usar o MaskedTextBox e setar uma máscara, se não for seguida, dá erro.

 

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...