Ir ao conteúdo
  • Cadastre-se

Pascal/Delphi Trocar de abas e botão voltar Delphi


Posts recomendados

Boa tarde a todos,

 

Como já havia dito em um post anterior, sou novato em desenvolvimento e mais ainda em Pascal/Delphi, no programa que estou escrevendo, me deparei com um problema que de repente é até simples mas não estou conseguindo resolver.

Tenho uma unit, dentro desta unit tenho um PageControl com seis abas e dentro da primeira aba tenho outro PageControl com mais duas abas (por enquanto).

Pois bem, dentro das abas deste último PageControl, tenho dois DBGrids, com SQLDataSet, DataSetProvider e ClientDataSet.

Inseri e programei alguns botões para Inserir, Editar, Excluir, Cancelar, Salvar e Sair, todos configurados e funcionando, tudo no PageControl(último citado).

Ainda no mesmo PageControl, coloquei um ComboBox e um botão de "OK", para selecionar as abas, funcionando quase da forma que preciso.

Ainda no mesmo PageControl, coloquei um campo TEdit para digitar e um potão de pesquisa, também funcionando, para as duas abas.

Ainda no mesmo PageControl, e agora vem a questão mesmo, inseri um botão de voltar, programei a parte em que ele apaga os dados escritos no campo de pesquisa porém, ele não retorna a tabela ao seu estado original, a tabela fica com o resultado da busca indefinidamente.

1º Como posso fazer para que quando eu trocar de abas em qualquer um dos PageControl's a outra aba desapareça?

2º Como posso fazer para que quando eu clique no botão voltar o grid retorne ao seu estado original?

Se houver mais alguma dica ou algo que eu possa melhorar em meu código(o que eu acho muito provável), eu agradeço imensamente.

 

Segue o código do botão voltar até agora:

 

procedure TfrmCompras.sbtnVoltarClick(Sender: TObject);
  Var
i : Integer;
begin
for i := 0 to ComponentCount -1 do
if Components is TEdit then
  begin
    TEdit(Components).Text := '';
  end;

  if pcFormCompras.ActivePage = tbsInsumos then
    begin
      tbsInsumos.TabVisible := false;
      TClientDataSet(dsInsumos.DataSet).Close;
      TClientDataSet(dsInsumos.DataSet).Open;
      tbsInsumos.TabVisible := true;
    end;
end;

 

Código do botão "OK" para troca de abas do segundo PageControl, o do primeiro é basicamente a mesma coisa:

 

procedure TfrmCompras.sbtnComprasFormClick(Sender: TObject);
begin
  case cbxComprasForm.ItemIndex of
    0 :  tbsInsumos.TabVisible := true;
    1 :  tbsProcedimentos.TabVisible := true;
  end;
  edtFormCompras.SetFocus;
end;

 

Utilizo Win10Pro64, Delphi Tokyo, MySQL(HeidiSQL)

 

Desde já agradeço imensamente.

Link para o comentário
Compartilhar em outros sites

  • mês depois...

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...