如何控制其它程序显示在最前(100分)

  • 主题发起人 主题发起人 zhangyouming980
  • 开始时间 开始时间
Z

zhangyouming980

Unregistered / Unconfirmed
GUEST, unregistred user!
比如现在正在执行的程序有Excel ,txt,或者其他exe执行程序,或者游戏,我想写一个能随意控制这些程序使它显示到最前方(和任务管理器一样)
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=415809
倒,到底怎样能让一个窗口总在最前?
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;
 
你这个是让自己显示在最前,我是想控制其它某个正在运行的程序使它显示到最前,该怎么写?
 
找到其它程序的窗口句柄H:=FindWindow(...),
修改它的风格SetWindowLong(H,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
 
kinneng兄弟,可否给个例子?谢谢!
 
不是吧,还没给分,随便打开一个记事本,

procedure TForm1.Button1Click(Sender: TObject);
var
h : HWND;
begin
h := FindWindow(nil, PChar('无标题 - 记事本'));
if h > 0 then begin
SetWindowLong(h,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
BringWindowToTop(h);
end;
end;
 
非常感谢!!!
 
后退
顶部