 |
ActiveDelphi .: O site do programador Delphi! :.
|
| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
mauricionicoli Novato


Registrado: Segunda-Feira, 25 de Julho de 2011 Mensagens: 91
|
Enviada: Sáb Ago 11, 2012 3:23 pm Assunto: como abrir um form dentro do outro... |
|
|
Bem, estou com um problema. Tenho uma tela de login e uma tela principal...
O login sendo válido o usuário passa para a tela principal chamada frmmenu...nela será feito cadastros, consultas e relatórios..
O que eu gostaria de fazer na verdade era abrir dentro do frmmenu todas as demais telas..eu uso um panel no frmmenu.
Tipo, sei que tem a questão do MDI e tal..só que o form de login não é a tela principal e precisa ser aberta antes do frmmenu onde serão
abertos os demais forms. Tem outras maneiras, abrir só um showmodal e pronto, mas é um trabalho de TCC e tem que ficar bom..
Uso delphi 7 e mysql com banco de dados...
Testei algumas formas encontrados em tópicos mas não consegui fazer...
| Código: | unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ExtCtrls, StdCtrls;
type
Tfrmprincipal = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
btnconfirmar: TButton;
btnsair: TButton;
procedure btnconfirmarClick(Sender: TObject);
procedure btnsairClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmprincipal: Tfrmprincipal;
implementation
uses Unit3, Unit2;
{$R *.dfm}
procedure Tfrmprincipal.btnconfirmarClick(Sender: TObject);
begin
if (edit1.Text = '') then //Verifica se o campo "Usuário" foi preenchido
begin
Messagedlg('O campo "Usuário" deve ser preenchido!', mtInformation, [mbOk], 0);
if edit1.CanFocus then
edit1.SetFocus;
Exit;
end;
if (edit2.Text = '') then //Verifica se o campo "Senha" foi preenchido
begin
Messagedlg('O campo "Senha" deve ser preenchido!', mtInformation, [mbOk], 0);
if edit2.CanFocus then
edit2.SetFocus;
Exit;
end
else
begin
with DM.ADOQuery do
begin
Active:=False;
SQL.Clear;
SQL.Add('Select * from administrador where usuario =:log and senha =:snh');
Parameters.ParamByName('log').Value:=edit1.Text;
Parameters.ParamByName('snh').Value:=edit2.Text;
Active:=True;
//================================================
if RecordCount > 0 then
frmmenu.ShowModal
else
ShowMessage('Login ou Senha incorretos, verifique!');
end;
end;
end;
procedure Tfrmprincipal.btnsairClick(Sender: TObject);
begin
close;
end;
end. |
obrigado a todos pela ajuda. |
|
| Voltar ao Topo |
|
 |
LarryIca Novato

Registrado: Quarta-Feira, 18 de Julho de 2012 Mensagens: 25
|
Enviada: Sáb Ago 11, 2012 7:35 pm Assunto: |
|
|
| PageControl não resolove teus problemas? |
|
| Voltar ao Topo |
|
 |
umaduvida Novato


Registrado: Quinta-Feira, 9 de Agosto de 2012 Mensagens: 73
|
Enviada: Sáb Ago 11, 2012 8:05 pm Assunto: |
|
|
cara eu sou novato no delphi meu professor do curso diz que quando eu não consigo fazer algo ele manda eu usar a imaginação enfim já tento o frames?
você coloca um frames e deixa ele visible false e coloca que quando a pessoa acerta o login e senha tipo
frames1.visible := True;
e o resto do código |
|
| Voltar ao Topo |
|
 |
Oseiasao Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011 Mensagens: 303
|
Enviada: Dom Ago 12, 2012 3:01 pm Assunto: |
|
|
amigo, vc pode fazer assim:
Vc teu projeto como MDI como padrão, até aí normal, porém, quando o sistema for aberto, junto com a abertura ele já abre uma tela, mas não dentro do MDI, voce pode faze-lo abrir uma tela solicitando usuário e senha, e deixa o formulario Pai com o enabled = false, e se no login a validação for ok, ele muda o enabled para true, assim, vc não precisará muita coisa.
Espero te-lo ajudado.
Abçs. _________________ Melhor é o fim das coisas do que o principio delas .... (Salomão) |
|
| Voltar ao Topo |
|
 |
mauricionicoli Novato


Registrado: Segunda-Feira, 25 de Julho de 2011 Mensagens: 91
|
Enviada: Qua Ago 15, 2012 9:57 am Assunto: |
|
|
| obrigado pela ajuda. |
|
| Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|