当两个程序都使用了‘Stay On Top’特性时哪个被激活,哪个就在最前端,
否则使用了‘Stay On Top’特性的窗口将在最前端
不过用fsStayOnTop属性在切换时会闪烁,调用API函数就没问题
with form1 do
setWindowPos(Handle,HWND_TOPMOST,left,top,width,height,SWP_NOMOVE);
//TForm虽然有TopMost属性,但屏幕回闪烁,本函数可以弥补这个缺点
procedure SetWindowTopMost(WindowName:TForm; DoTopMost:Boolean);
begin
if DoTopMost then
SetWindowPos(WindowName.Handle,Hwnd_Topmost,0,0,0,0,(SWP_NOMOVE Or SWP_NOSIZE))
else
SetWindowPos(WindowName.Handle,Hwnd_Notopmost,0,0,0,0,(SWP_NOMOVE Or SWP_NOSIZE));
end;