在窗体显示中我用了
  protected
     procedure CreateParams(var Params: TCreateParams); override;
//---------------------------------------------------------------
procedure TBaseSiteMain.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  Params.WndParent := GetDesktopWindow;
end;
使得SHOW出来的窗体A在任务栏中显示,但是我在该窗体上按某个快捷键会弹出一个SHOWMODAL窗体B,却自动把窗体A给最小化,请问有什么方法可以解决不让其最小化.
注意:窗体A不是主窗体....THANKS!~

解决方案 »

  1.   

    procedure CreateParams(var Params: TCreateParams); override; 
     procedure WMSysCommand(var Msg: TWMSysCommand); message WM_SYSCOMMAND; //------------------------------------------------- procedure Tmainfrm.CreateParams(var Params: TCreateParams);
      begin
       inherited CreateParams(Params);
       Params.ExStyle:= Params.ExStyle or WS_EX_APPWINDOW;
      end;
    //*WMSysCommand 函数的主体
    //------------------------------------------------------
     procedure Tmainfrm.WMSysCommand(var Msg: TWMSysCommand);
      begin
      case Msg.CmdType of
        SC_MINIMIZE: begin
          ShowWindow(Handle, SW_MINIMIZE);
          Application.Minimize;
          ShowWindow(Application.Handle, SW_HIDE);
          ShowWindow(Handle, SW_MINIMIZE);
        end;
        SC_RESTORE: begin
          Application.Restore;
          ShowWindow(Handle, SW_RESTORE); 
          ShowWindow(Application.Handle, SW_HIDE);
        end; 
        else
          inherited;
      end;
    end;
      

  2.   

    to goldencity(响马):
    很抱歉,你的方法不行!
      

  3.   

    goldencity(响马) :
    很抱歉,是我搞错,呵呵,真是不同凡响!,THANK YOU!