Autor Tópico: Lazarus - Problemas com código  (Lida 2986 vezes)

Offline Evandro Abu Kamel

  • Usuário Ubuntu
  • *
  • Mensagens: 202
  • Ubuntu Jaunty
    • Ver perfil
    • Fórum Sistemas de Imformação PUC Minas
Lazarus - Problemas com código
« Online: 12 de Maio de 2007, 16:42 »
Estou fazendo um sistema de lan house, até criei um tópico aqui sobre ele.

Mas surgiu um pequeno problema: o 'ShowModal' está dando erro.
Criei um botão no formulário principal e dentro dele coloquei o código:

Código: [Selecionar]
procedure TfrmMain.BtnInf1Click(Sender: TObject);
begin
  frmMaq.showmodal;
end;

'frmMaq' é um pequeno formulário que criei contendo uma infiormações.
Quando mando compilar aparecem as seguintes mensagens:

Código: [Selecionar]
umain.pas(275,3) Error: Identifier not found "frmMaq"
umain.pas(275,19) Error: Illegal expression
umain.pas(283) Fatal: There were 2 errors compiling module, stopping

Em Project Options coloquei o 'frmMain' como Auto-Create e o frmLogin e frmMaq como Avaliable.
Junto com o código inserido no arquivo de projeto:

Código: [Selecionar]
begin
  Application.Initialize;
  frmLogin := tfrmLogin.Create(application);
  frmLogin.showmodal;
  Application.CreateForm(TfrmMain, frmMain);
  frmLogin.hide;
  frmLogin.Free;
  Application.Run;
end.

O programa abre primeiro o formulário de login e depois ele abre o principal.

Então é isso, o 'frmMaq' não quer aparecer com o showmodal inserido no botão.
Alguém faz idéia do que seja?

Agradeço.


ginho

  • Visitante
Re: Lazarus - Problemas com código
« Resposta #1 Online: 12 de Maio de 2007, 17:16 »
Evandro, não agüentei e quero tirar uma dúvida com você.
Colocou:
Citar
coloquei o 'frmMain' como Auto-Create
e aqui
Citar
Application.CreateForm(TfrmMain, frmMain);
quando você já esta na frmMain e clica sobre o botão para chamar a frmMaq que tem em seu conteúdo
Citar
begin
  Application.Initialize;
  frmLogin := tfrmLogin.Create(application);
  frmLogin.showmodal;
  Application.CreateForm(TfrmMain, frmMain);
  frmLogin.hide;
  frmLogin.Free;
  Application.Run;
end.

Estaria tentando recriar a frmMain ou o conteúdo anterior não é da frmMaq?
Entendi ?

Offline Evandro Abu Kamel

  • Usuário Ubuntu
  • *
  • Mensagens: 202
  • Ubuntu Jaunty
    • Ver perfil
    • Fórum Sistemas de Imformação PUC Minas
Re: Lazarus - Problemas com código
« Resposta #2 Online: 12 de Maio de 2007, 18:52 »
Não, esse bloco maior é do arquivo .lpr .
Ele auto-cria o frmMain, mas antes chama o frmLogin.
Acho que é assim que funciona.  :P

Tô achando que o problema é com o 'showmodal'.
Criei um outro programinha inútil só pra testar ele e não deu certo, deu o mesmo erro.
No Delphi 2006 funciona...
« Última modificação: 12 de Maio de 2007, 19:12 por Evandro Abu Kamel »