我怎样实现在显示主窗体前显示并控制其它窗体?

zcn 2000-08-24 08:15:00
我在用delphi编写数据库程序时,在出现主窗体界面前有一个登录窗体,让用户输入工号和口令,检验通过后才显示主界面(并非是一个启动封面,启动封面一闪而过或者延时一下稍做停留,而登录窗体要永久停下除非用户检验通过或输三次密码后不通过)。这个怎样实现?另外,如果是将登录窗体设为主窗体,这样不规范,而且这样的话,主界面最小划时其任务栏图标很难看。(因为它不是主窗体)
...全文
133 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyby 2000-09-04
  • 打赏
  • 举报
回复
只用在主窗体的Create事件里加上formlogin.shoemodal()就行了,
程序处理完登录工作,会自动往下执行主窗体的show()。
jumpboy 2000-08-24
  • 打赏
  • 举报
回复
将Form2不要自动生成
procedure TForm1.FormShow(Sender: TObject);
begin
Application.CreateForm(TForm2, Form2);
Form2.showmodal;
end;
Michaelyfj 2000-08-24
  • 打赏
  • 举报
回复
有问题...
Michaelyfj 2000-08-24
  • 打赏
  • 举报
回复
这其实和启动窗体很类似,启动窗体和显示一小段时间自动关闭,
而登录窗体是油用户干预后才关闭,在工程文件(.dpr)中输入:
begin
Application.CreateForm(TFormMain, FormMain); //创建主窗体
Application.CreateForm(TFormPwd, FormPwd); //创建登录窗体
if FormPwd.ShowModal=mrok then //密码验证正确后返回mrok
Application.Run
else Application.Terminate;
end;

在Formpwd登录窗体中如果密码验证正确后ModalResult := mrok
否则 ModalResult := mrCancel;
Michaelyfj 2000-08-24
  • 打赏
  • 举报
回复
这和启动窗体类似,只是启动窗体在一段时间后自动关闭并释放。而登录窗体要等到用户输入
工号和密码验证正确后关闭。在工程文件(.dpr)中写入,如:
begin
Application.CreateForm(TFormMain, FormMain);//创建主窗体
Application.CreateForm(TFormPwd, FormPwd);
if FormPwd.ShowModal<>mrOk then
Application.Terminate
else
Application.Run;
end;
当密码验证正确后, 让FormPwd.ShowModal返回mrOk,即ModalResult := mrOk
Michaelyfj 2000-08-24
  • 打赏
  • 举报
回复
这和启动窗体类似,只是启动窗体在一段时间后自动关闭并释放。而登录窗体要等到用户输入
工号和密码验证正确后关闭。在工程文件(.dpr)中写入,如:
begin
Application.CreateForm(TFormMain, FormMain);//创建主窗体
Application.CreateForm(TFormPwd, FormPwd);
if FormPwd.ShowModal<>mrOk then
Application.Terminate
else
Application.Run;
end;
当密码验证正确后, 让FormPwd.ShowModal返回mrOk,即ModalResult := mrOk
keboy 2000-08-24
  • 打赏
  • 举报
回复
It is so easy!
....
With TloginForm.Create(Application) do
Begin
ShowModal;
...
end;
BringToFront;

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧