Fórum Duvida um pouco simples sobre Delphi #558822

01/07/2016

0

Sou novo aqui no fórum, não consegui encontrar um post com a minha duvida, mas se houver alguma e eu nao tenha achado, me desculpe.

Meu problema é o seguinte, sou iniciante no delphi e estou criando um pequeno cadastro, nele tenho um ComboBox de tipo de pessoa com duas opções: Física e Jurídica, eu ocultei (o box do visible deixei false) os campos como RG, CPF, Data de nascimento, sexo, IE, CNPJ, razao social e os labels. Eu quero que quando eu clicar em fisica ele mostre os respectivos campos de pessoa fisica (RG, CPF, Data de nascimento, sexo) e juridica os respectivos campos de juridica (IE, CNPJ, razao social). Se alguem puder me ajudar eu fico muito agradecido.

segue o codigo que eu estava tentando usar:

begin
if
ComboBox1.Items.IndexOf('Física')
DBEdit3.Visible := True;
DBEdit5.Visible := True;
DBEdit6.Visible := True;
DBEdit9.Visible := True;
Label5.Visible := True;
Label6.Visible := True;
Label3.Visible := True;
Label9.Visible := True;
else if
ComboBox1.Items.IndexOf('Jurídica')
DBEdit7.Visible := True;
DBEdit8.Visible := True;
Label7.Visible := True;
Label8.Visible := True;
end;

lembrando que nao esta dando certo ele da alguns erros um deles é "E2012 Type of expression must be BOOLEAN"
Silvio Souza

Silvio Souza

Responder

Post mais votado

01/07/2016

Boa tarde!

Está mais ou menos correto. Quase lá!
Tente isso, no evento OnChange do deu ComboBox, coloque:

Case ComboBox1.ItemIndex Of
    0:begin
        // Mostra os componentes referente a FÍSICO
        DBEdit3.Visible := True;
        DBEdit5.Visible := True;
        DBEdit6.Visible := True;
        DBEdit9.Visible := True;
        Label5.Visible := True;
        Label6.Visible := True;
        Label3.Visible := True;
        Label9.Visible := True;
        // Oculta os componentes referente a JURÍDICO
        DBEdit7.Visible := False;
        DBEdit8.Visible := False;
        Label7.Visible := False;
        Label8.Visible := False;
      end;
    1:begin
        // Mostra os componentes referente a JURÍDICO
        DBEdit7.Visible := True;
        DBEdit8.Visible := True;
        Label7.Visible := True;
        Label8.Visible := True;
        // Oculta os componentes referente a FÍSICO
        DBEdit3.Visible := False;
        DBEdit5.Visible := False;
        DBEdit6.Visible := False;
        DBEdit9.Visible := False;
        Label5.Visible := False;
        Label6.Visible := False;
        Label3.Visible := False;
        Label9.Visible := False;
      end;
  end;


Existe algumas maneiras mais dinâmicas e visualmente mais profissionais (ao meu ver) para resolver o problema... Porém seguindo seu método, creio que isso resolva.

Boa sorte!

Mateus Ribeiro

Mateus Ribeiro
Responder

Gostei + 1

Mais Posts

01/07/2016

Silvio Souza

Muito Obrigado! Deu super certo, realmente quem manja é outra coisa né hahaha, obrigado msm e boa tarde
Responder

Gostei + 1

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar