XP中如何使得窗体提到最前面?(100分)

  • 主题发起人 主题发起人 jadelongbow
  • 开始时间 开始时间
J

jadelongbow

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在我的程序中把程序自己提到所有窗口的最前面,让用户直接选择,就像使用<br>FlashGet时,当你点击“使用FlashGet”下载时,FlashGet会自动弹出对话框让你<br>选择那种效果。我在程序中使用<br>&nbsp; SetWindowPos(Handle, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE);<br>可是没有任何反应,请各位指教。
 
给一个思路也可以加分。
 
给你一段代码,可以让你的窗体至高无上:)<br>调试通过,试试吧:<br>unit Unit2;<br>interface<br>uses<br>&nbsp; Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,<br>&nbsp; Dialogs;<br>type<br>&nbsp; TForm2 = class(TForm)<br>&nbsp; private<br>&nbsp; &nbsp; { Private declarations }<br>&nbsp; protected<br>&nbsp; &nbsp; &nbsp; procedure CreateParams(var Params: TCreateParams); override; //&lt;&lt;&lt;<br>&nbsp; public<br>&nbsp; &nbsp; { Public declarations }<br>&nbsp; end;<br>var<br>&nbsp; Form2: TForm2;<br>implementation<br>{$R *.dfm}<br><br>procedure TForm2.CreateParams(var Params: TCreateParams); <br>begin<br>&nbsp; &nbsp; &nbsp; inherited CreateParams(Params);<br>&nbsp; &nbsp; &nbsp; Params.ExStyle &nbsp; &nbsp;:= Params.ExStyle or WS_EX_TOPMOST;<br>&nbsp; &nbsp; &nbsp; Params.WndParent &nbsp;:= &nbsp;GetDesktopWindow();<br>end;<br><br>end.<br>**********************<br>或者修改你的参数:<br>SetWindowPos(Handle,HWND_TOPMOST,Left,Top,Width,Height,SWP_SHOWWINDOW or SWP_NOMOVE or SWP_NOSIZE);<br>
 
我已经说明了,并不是要实现“总在最上”的效果,而是把窗体显示到最上而已。
 
application.bringtofront<br>试试
 
[:D]学习<br>有狠人没,回答一下!!!!
 
接受答案了.
 
后退
顶部