分享

delphi切换指定窗口到最前并获得焦点

 aaie_ 2012-10-20
delphi切换指定窗口到最前并获得焦点

今天在DFW看到有人问"一个相对较简单的问题(窗口激活) 真的很失望,200分,我感觉一个不是太复杂

的问题,论坛竟然没有人会?[?] ",呵呵,口气不小,而且说话还有点那个,本来这个问题我想回答的,不

过他既然说DFW没人,偶也不好驳人面子,就在我的Blog发了吧,看不看到是他的事,反正偶不爱和那人

说话。
好了不说废话了,说说具体的吧,要实现“切换指定窗口到最前并获得焦点”,很简单,我们只需一

个函数就OK了,那就是SwitchToThisWindow,这个函数估计知道的人不多,是从user32.dll导出的,其原

形为:

procedure SwitchToThisWindow(hWnd:Thandle; //窗体句柄
fAltTab:boolean //设为true相当于按ALT+TAB切换到指定窗口,至于

//为false是效果自己看吧,偶不会说了
);

具体实例:
//静态加载SwitchToThisWindow
procedure SwitchToThisWindow(hWnd:Thandle;fAltTab:boolean);stdcall;external 'User32.dll';

procedure TForm1.Button1Click(Sender: TObject);
var
h:thandle;
begin
h:=findwindow(nil,'test');
SwitchToThisWindow(h,true);
end;

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多