delphi mainForm调用Form2。关闭FORM问题求解
mainForm调用Form2。FORM2是登陆窗口,登陆成功后直接显示mainForm,但在FORM2点击关闭按钮,确也显示出mainForm.如何解答mainForm...
mainForm调用Form2。FORM2是登陆窗口,登陆成功后直接显示mainForm,但在FORM2点击关闭按钮,确也显示出mainForm.
如何解答
mainForm 已经自动创建。。FORM2是mainForm中调用的。。 展开
如何解答
mainForm 已经自动创建。。FORM2是mainForm中调用的。。 展开
展开全部
给你个建议:
登录窗口在主窗口前建立并显示,这样可以加快程序启动速度,在登录窗口中根据点击确认后再建立包括主窗口在内的其他窗口,如果点击的是关闭,则直接结束程序,不再建立其他窗口。
以下是我一个程序上的代码,可能对你有用:
program Project1;
uses
Forms,
Controls,
Unit1 in 'Unit1.pas' {Form1},
datamodule in 'datamodule.pas' {Datam: TDataModule},
Unit2 in 'Unit2.pas' {Form2},
remain in 'remain.pas' {richform},
Unit3 in 'Unit3.pas' {Form3},
DBGridEhToExcel in 'DBGridEhToExcel.pas',
Unit4 in 'Unit4.pas' {Form4},
Windows,
login in 'login.pas' {login},
custum in 'custum.pas';
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.Title := '月报系统';
Application.CreateForm(TForm1, Form1);//这个是主窗体,也可以放在登录后建立
Application.CreateForm(TDatam, Datam);//这个是数据窗体,因为登录窗口要连接数据库,
//所 以这个要在前
login:=tlogin.Create(nil); //这个是登录窗口
if login.ShowModal=mrok then
begin
Application.CreateForm(TForm2, Form2);//这些都是些小窗口
Application.CreateForm(Trichform, richform);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
application.Run;
end else
begin
datam.ysset.SetProvider(datam.Provider1);
login.Free;
datam.Free;
Form1.Free;
Application.Terminate;
end;
end.
登录窗口在主窗口前建立并显示,这样可以加快程序启动速度,在登录窗口中根据点击确认后再建立包括主窗口在内的其他窗口,如果点击的是关闭,则直接结束程序,不再建立其他窗口。
以下是我一个程序上的代码,可能对你有用:
program Project1;
uses
Forms,
Controls,
Unit1 in 'Unit1.pas' {Form1},
datamodule in 'datamodule.pas' {Datam: TDataModule},
Unit2 in 'Unit2.pas' {Form2},
remain in 'remain.pas' {richform},
Unit3 in 'Unit3.pas' {Form3},
DBGridEhToExcel in 'DBGridEhToExcel.pas',
Unit4 in 'Unit4.pas' {Form4},
Windows,
login in 'login.pas' {login},
custum in 'custum.pas';
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.Title := '月报系统';
Application.CreateForm(TForm1, Form1);//这个是主窗体,也可以放在登录后建立
Application.CreateForm(TDatam, Datam);//这个是数据窗体,因为登录窗口要连接数据库,
//所 以这个要在前
login:=tlogin.Create(nil); //这个是登录窗口
if login.ShowModal=mrok then
begin
Application.CreateForm(TForm2, Form2);//这些都是些小窗口
Application.CreateForm(Trichform, richform);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
application.Run;
end else
begin
datam.ysset.SetProvider(datam.Provider1);
login.Free;
datam.Free;
Form1.Free;
Application.Terminate;
end;
end.
展开全部
1。在project->options的mainForm可以选择你想要显示的主窗体。
2。mainForm再次显示因为你还没有关闭。
3。如果想要在点击FORM2关闭按钮的时候,先在file---uses引用mainForm。在关系按钮里加上这句mainForm.close.
2。mainForm再次显示因为你还没有关闭。
3。如果想要在点击FORM2关闭按钮的时候,先在file---uses引用mainForm。在关系按钮里加上这句mainForm.close.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的关闭按钮是哪种按钮,一般的tbutton,还是Tbitbtn,后种button不用写代码
直接设置 moduleresult 为mrCancel,就可以退出。
option——forms 选项里,是否设置正确。主窗体 要放在autocreate forms 这里。
直接设置 moduleresult 为mrCancel,就可以退出。
option——forms 选项里,是否设置正确。主窗体 要放在autocreate forms 这里。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不能这样。。。如果form2为登录窗口,你就要在工程的那个文件里先创建并显示form2,如果确定登录动作后,再创建mainform窗口进行显示
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询