我正在研究 Yakuake 的克隆而且,如果您使用过它,您就会知道它的功能之一就是为了轻松而抢占焦点。
基本上,您按下“显示”热键,应用程序就会出现,您可以在上面书写。 你可以用任何应用程序做任何事情(被 Yakuake 隐藏),但是一旦你按下热键,Yakuake 就会出现并抢走焦点。我想对我的应用程序执行同样的操作。
我知道有一些窗口管理器规则阻止应用程序执行此操作,但 Yakuake 正在执行此操作,为什么我无法执行此操作?
此外,此应用程序旨在与 Windows、Linux 和 Mac 兼容,因此不会出现 KDE 或 Gnome 或 < insert_your_favourite_window_manager_here > 黑客行为;我不会采取检测 WM 并进行黑客攻击的方式。
PS:我正在用 C++ 和 Qt4 开发该应用程序。
编辑:
为了说清楚,我不要求任何代码(但如果您确实有一些示例,我很感激)。我正在寻求一种方法来做到这一点。我应该怎么做才能让 WM 将焦点分配给我的应用程序。有没有标准的方法可以做到这一点?
最佳答案
有 Qt::WindowStaysOnTopHint
....
关于c++ - 窃取焦点(有充分的理由),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13085018/