Ir ao conteúdo
  • Cadastre-se
Gabriel Sassaki

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Junte-se à conversa

Você pode postar agora e cadastrar-se depois. Se você tem uma conta, faça o login para postar.

Visitante
Responder

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

  Só é possível ter até 75 emoticons.

×   O link foi automaticamente convertido para mostrar o conteúdo.   Clique aqui para mostrá-lo como link comum

×   Seu texto anterior foi restaurado.   Limpar o editor

×   You cannot paste images directly. Upload or insert images from URL.






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!