我已经做好了一个程序,突然想起要给它在登陆时作一个用户检验,就新加了一个form,名字叫form2,在主窗体create事件里加入:
application.createform(tform2,form2);
form2.showmodal;主窗体的show事件里加入:
form2.close;
form2.release;再在form2的create事件里加入判断语句,如果通过的话,就执行:
form1(就是主窗体).showmodal;编译已经成功了,而且可以运行,但不知为什么,每一次主窗体出现后,关掉了form2,过了一会就会出现非法操作,使系统的问题么?还是这样写程序有问题?
那应该怎么在主窗体前加入一个窗体?
请高手指教,谢了!!
application.createform(tform2,form2);
form2.showmodal;主窗体的show事件里加入:
form2.close;
form2.release;再在form2的create事件里加入判断语句,如果通过的话,就执行:
form1(就是主窗体).showmodal;编译已经成功了,而且可以运行,但不知为什么,每一次主窗体出现后,关掉了form2,过了一会就会出现非法操作,使系统的问题么?还是这样写程序有问题?
那应该怎么在主窗体前加入一个窗体?
请高手指教,谢了!!
begin
Application.Initialize;
Application.CreateForm(TdmJxc, dmJxc);
frmLogin := TfrmLogin.Create(nil);
if frmLogin.ShowModal() = mrOk Then
Application.CreateForm(TfrmMain, frmMain); Application.Run;
end.
var
frmLogin:TFrmLogin;
begin
frmLogin:=TFrmLogin.Create(Self);
try
if frmLogin.showmodal=mrOK then begin
if 密码不正确 then
ApplicationTerminate;
end
else
Application.Terminate;
finally
frmLogin.free;
end;
end;
可以在project----------view source中打开项目文件
在这里加入form2
例如: Application.Initialize;
Application.CreateForm(Tform1, form1);
Application.CreateForm(Tfrmpass, frmpass);
frmpass.ShowModal;
if frmpass.verisok=false then//判断语句,如果不通过
application.Terminate;
frmpass.Free;
Application.Run;verisok是frmpass的一个变量,这样只要输入的密码不对,verisok=false
程序就退出了
form2.close;
form2.release;后面的form2.release;不用了,只要你调用close方法,它自动release。