以前用DELPHI的程序现在要改成多窗口形式的,但遇到一个很怪的问题,子窗口就是SHOW不出来,问题具体如下:
现有三个窗口:f_Login,f_Main,f_SetPassword
  f_Login f_Main的FormStyle为fsMDIForm,f_SetPassowrd的FormStype为fsMDIChild,按Ctrl+Shift+F11设置了Forms(Auto-Create forms)左边f_Login f_Main两个窗口,右边(Available forms)f_SetPassword窗口.f_Login上有个登录按钮,单击它让f_Main窗口SHOW出来,但单位f_Main上的菜单让f_SetPassword显示却显示不了,也就是SHOW不出来,用了多种方法,要不报内存错误要么就没反应,自己测试的方法代码如下:
以下两种方法都不行:
方法一:
procedure Tf_Main.PasswordSet1Click(Sender: TObject);
begin
   Application.CreateForm(Tf_SetPassword,f_SetPassword);
   f_SetPassword.Show;
end;
方法二:
procedure Tf_Main.PasswordSet1Click(Sender: TObject);
var
   f_ChangePassword:Tf_ChangePassword;
begin
   f_ChangePassword.Show;
end;忘哪位朋友给个方法,最好有代码,小弟万分感谢了。

解决方案 »

  1.   

    以下两种方法都不行: 
    方法一: 
    procedure Tf_Main.PasswordSet1Click(Sender: TObject); 
    begin 
      Application.CreateForm(Tf_SetPassword,f_SetPassword); 
      f_SetPassword.Show; 
    end; 
    方法二: 
    procedure Tf_Main.PasswordSet1Click(Sender: TObject); 
    var 
      f_SetPassword:Tf_SetPassword; 
    begin 
      f_SetPassword.Show; 
    end; //怎么就没人帮忙呢?小弟很急的
      

  2.   

    但点击f_Main上的菜单让f_SetPassword显示却显示不了,也就是SHOW不出来,用了多种方法,要不报内存错误要么就没反应,自己测试的方法代码如下: