在delphi7怎样把窗体设置在所有程序之上。
我记得在delphi 6中的formstlye有很多的选项,其中一个就是。
但是delphi7只有四个。最多可以设置在本身的程序的窗体之上。

解决方案 »

  1.   

    setwindowpos我试过了。。只能对主窗体有用。
    但是对于非主窗体就不可以了。
      

  2.   

    FormStyle=fsStayOnTop不就是吗?
    这个只能对于在该程序中的窗体有效。。不能在其他程序的窗体之上。
      

  3.   

    FormStyle=fsStayOnTop!
    我刚才试了,启动了几个程序,包括IE,窗口始终在最前面。
      

  4.   

    我已经找到解决方法啦。
    关键技术是重载Form的CreateParams方法
    {form2 code}
    public
      procedure CreateParams(Var Params:TCreateParams);override;uses unit1;
    procedure tform2.CreateParams(var Params:TCreateParams);
    begin
      inherited;
      With Params do
      begin
        wndParent:=GetDesktopwindow;
        ExStyle:=ExStyle or WS_EX_TOPMOST;
      end;
    end;