[求助]让窗口本身失去焦点(激活状态)

boom201 2014-03-09 01:54:31
请教各位大神,有没有办法在窗口上设置一个按钮,然后点击后主窗口失去焦点。目前我实现的办法是application.Minimize;然后对新获得焦点的其他程序的窗口进行了一些模拟按键的操作,然后再application.Restore;实在是觉得有点山寨。。。。而且最小化,恢复都有动画效果。
...全文
327 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
boom201 2014-03-09
  • 打赏
  • 举报
回复
谢谢sololie,消息的方式我试过了,不过没成功,。另外我就是不想获取其他窗口的句柄,所以用模拟按键的方式。 谢谢,看还有其他可行的办法没?
sololie 2014-03-09
  • 打赏
  • 举报
回复
BringWindowToTop 可以嘛,比如有一个其他的程序如计算器, 得到它的hwnd,然后你的程序调用BringWindowToTop(计算器的hwnd),那么计算器就会获得焦点并置顶,你的程序自然就失去焦点了
boom201 2014-03-09
  • 打赏
  • 举报
回复
还有别的办法吗,自己顶一下先。
sololie 2014-03-09
  • 打赏
  • 举报
回复
也可以试试发送WM_KILLFOCUS消息
sololie 2014-03-09
  • 打赏
  • 举报
回复
对新获得焦点的其他程序的窗口 调用 BringWindowToTop(hwnd) 算了

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧