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

ShowModal ou invisibilizar componentes?


Fuzileir0

Pergunta

Galera,

estou começando com Delphi e estou com uma dúvida aqui...

Como vocês fazem seus formulários?

Por ex., tem a opção "Abrir X" num menu. Quando a pessoa clicar ali, vocês fazem abrir um novo formulário? Se sim, COMO fazem isso? Já criei o outro formulário mas não sei como fazê-lo abrir.

Se não é dessa forma, vocês deixam os componentes invisibilizados e quando o usuário clicar em Abrir ele automaticamente faz aparecer?

Ou se tem outra forma, podem falar...

Valeu!

EDIT:

Resolvido. Era só colocar o nome da unit em "uses".

Editado por Fuzileir0
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Tem aqui duas opções.

O formulário principal fica sempre em auto-create forms.

Os formulários segundários podem ser das duas maneiras.

Nesta opção você tem mudar no delphi em Project options, sua form para ''avaliable forms''lado direito.

Isto quer dizer que a form só será criada quando você chama ela no procedure .

procedure TForm1.FlatSpeedButton20Click(Sender: TObject);
begin
Clubes2:=TClubes2.Create(self);
Clubes2.show;
end;
Nesta opção você deixa em ''auto-create forms''lado esquerdo. Isto quer dizer que a form já foi criada quando você executou o projecto apenas ficou invisivel...depois é só mostrar .
procedure TForm1.FlatSpeedButton20Click(Sender: TObject);
begin
Clubes2.show;
end;

Quando você faz o Run pede para salvar e depois para associar as units e tá rodando.

Abraço.

Editado por António44
Link para o comentário
Compartilhar em outros sites

  • 0

Valeu cara!

Consegui resolver mas agora estou com outra dúvida..

estou usando o Zeoslib pra fazer a conexão do MySQL com o Delphi 2007. Conecta tudo beleza, coloco o componente "ZQuery", edito o SQL (TStrings) dele com a consulta sql, beleza. Na hora que mando executar a SQL com um botão que criei (OnClick), ele me dá uma exceção "EZSQLException" Can not open a Resultset, porém EXECUTA a consulta.

Eu estou executando a consulta desta maneira:

OnClick...

sqlTeste.Active := True;

Qual será o problema que está gerando essa exceção, alguém sabe?

Link para o comentário
Compartilhar em outros sites

  • 0
"EZSQLException" Can not open a Resultset

Não pode abrir um ResultSet

Junto com o ZQuery voce deve usar um DataSource

abraço

Estou usando um TDataSource.

TDataSource -> TClientDataSet -> TDataSetProvider -> TZQuery -> TZConnection

Ele insere os dados, mas continua dando este erro...

Estou desconfiado que o erro é por ativar a consulta com um comando tipo sql.Active := True. Existe outra maneira de ativar SQL?

Editado por Fuzileir0
Link para o comentário
Compartilhar em outros sites

  • 0
Estou usando um TDataSource.

TDataSource -> TClientDataSet -> TDataSetProvider -> TZQuery -> TZConnection

Ele insere os dados, mas continua dando este erro...

Estou desconfiado que o erro é por ativar a consulta com um comando tipo sql.Active := True. Existe outra maneira de ativar SQL?

existe... voce pode usar .... ZQuery1.Open;

mas não creio que seja este o problema... talvez voce tenha esquecido de setar alguma propriedade do ZQuery ou do

ZConnection1.

ou pode ser a maneira como construiu a sua select

reveja o seu código

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
Estou usando um TDataSource.

TDataSource -> TClientDataSet -> TDataSetProvider -> TZQuery -> TZConnection

Ele insere os dados, mas continua dando este erro...

Estou desconfiado que o erro é por ativar a consulta com um comando tipo sql.Active := True. Existe outra maneira de ativar SQL?

existe... voce pode usar .... ZQuery1.Open;

mas não creio que seja este o problema... talvez voce tenha esquecido de setar alguma propriedade do ZQuery ou do

ZConnection1.

ou pode ser a maneira como construiu a sua select

reveja o seu código

abraço

Com o .Open funcionou! Valeu!

Vou aproveitando este tópico e tirando outras dúvidas...

Quando vou iniciar um Projeto, eu vou em New->VCL Forms. Depois de criado o projeto, para criar um form dentro deste projeto eu estou criando em New->Form. É isso mesmo ou está errado?

Outra dúvida, pra fechar um form eu uso o .Close, mas e para encerrar completamente a aplicação? Se eu uso .close ela continua rodando como processo... help!

Link para o comentário
Compartilhar em outros sites

  • 0

Depois de criado o projeto, para criar um form dentro deste projeto eu estou criando em New->Form. É isso mesmo ou está errado?

isso mesmo

Outra dúvida, pra fechar um form eu uso o .Close, mas e para encerrar completamente a aplicação? Se eu uso .close ela continua rodando como processo... help!

use o comando

application.Terminate;

abraço

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...