给你个例子: unit wLogin; interface …… …… …… …… function LoginFrmShow: Integer; implementation uses uDM; {$R *.dfm} function LoginFrmShow: Integer; begin with TLoginFrm.Create(nil) do begin try Brush.Style := bsClear; Result := ShowModal; finally Free; end; end; end; …… …… --------------------------------------------------------------program YourProgram; uses Forms, wMain in 'wMain.pas' {MainFrm}, wLogin in 'wLogin.pas' {LoginFrm}; {$R *.res} begin Application.Initialize; if LoginFrmShow = 1 then begin Application.CreateForm(TMainFrm, MainFrm); Application.Run; end;
unit wLogin; interface …… ……
…… ……
function LoginFrmShow: Integer; implementation uses uDM; {$R *.dfm} function LoginFrmShow: Integer;
begin
with TLoginFrm.Create(nil) do
begin
try
Brush.Style := bsClear;
Result := ShowModal;
finally
Free;
end;
end;
end; …… ……
--------------------------------------------------------------program YourProgram;
uses
Forms,
wMain in 'wMain.pas' {MainFrm},
wLogin in 'wLogin.pas' {LoginFrm}; {$R *.res}
begin
Application.Initialize; if LoginFrmShow = 1 then
begin
Application.CreateForm(TMainFrm, MainFrm);
Application.Run;
end;
在FrmMain的OnShow事件里写:FrmLogin.showModel;这样就先显示登陆窗口了,
关闭登陆窗口后主窗口就会显示出来,但要记录登陆是否成功,就可以在FrmLogin里声明一个全局变量,判断是否登陆成功,因为在取消登陆时关闭登陆窗口是整个工程都要关闭,而不应该再显示主窗口出来。
if loginform.showmodal<>mrOK then
application.Terminate;loginform中,如果登录成功,设置modalresult:=mrOK,就可以了
http://book.csdn.net/bookfiles/662/10066220894.shtml
里面说的很详细...
http://book.csdn.net/bookfiles/662/10066220894.shtml
里面说的很详细...