又有问题了(小弟分差不多给完了,等分数稍微多一点再给)(0分)

  • 主题发起人 主题发起人 billson
  • 开始时间 开始时间
B

billson

Unregistered / Unconfirmed
GUEST, unregistred user!
创建了两个窗体,分别为frmLogin和frmMain,用户必须登录后才能进入frmMain,在project
的options中设置了启动窗体为frmLogin,运行时按正常顺序显示窗体(即必须通过frmLogin
窗体才能进入frmMain窗体),后来,不知怎么回事,运行时frmLogin和frmMain同时显示,
而且可以不通过frmLogin直接访问frmMain,奇怪,是什么原因?
 
你看看frmMain的Visible是不是True,如果是的话,改成False试试看
 
这样肯定可以,但为什么在启动时会有两个窗体同时显示呢,因为我的project的options
中已经指定启动窗体啊
 
缺省的Form的Visible是False,如果为Ture,则会自动显示出来,一般有登录窗口的话都
不会把登录窗口作为主窗口,而是修改工程文件,如:
begin
Application.Initialize;
Application.Title := 'XXXXXX';
PasswordForm:=TPasswordForm.Create(nil);
if PasswordForm.ShowModal=1 then //mrOK=1,但是不知道为什么说mrOK未定义
begin
PasswordForm.free; //尽早释放,否则会在等程序运行结束后才会释放它
Application.CreateForm(TCreateMenuForm, CreateMenuForm);
Application.Run;
end
else
PasswordForm.Free;
end.
 
TO 教父:
我按照你的方法试了一下,运行时发现执行到 if PasswordForm.ShowModal=1 then
这条语句后,登录窗体弹出,其下面的语句没有执行(从begin开始)
这条语句开始到结束),所以产生很多错误,如何修正
 
你有没有TCreateMenuForm
 
后退
顶部