怎样制作真正的TopMost窗口

怎样制作真正的TopMost窗口:

怎样制作真正的TopMost窗口

如果一个TOPMOST窗口不是MainForm的话,那么即将将它设为总在顶端,它也会随着主窗口的前摆而前摆,后摆而后摆。那么怎么解决这个问题呢?

先将窗口的BorderStyle设为bsNone,FormStyle设为fsStayOnTop。

procedure TForm3.CreateParams(var Params:TCreateParams);

begin

inherited;

with Params do

begin

Style:=Params.Style xor WS_DLGFRAME;

WndParent:=0;//此行

end;

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

Width:=36;

Height:=36;

SetWindowLong(Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);

end;