c++ - 窃取焦点(有充分的理由)

标签 c++ qt4 focus qt-creator

我正在研究 Yakuake 的克隆而且,如果您使用过它,您就会知道它的功能之一就是为了轻松而抢占焦点。

基本上,您按下“显示”热键,应用程序就会出现,您可以在上面书写。 你可以用任何应用程序做任何事情(被 Yakuake 隐藏),但是一旦你按下热键,Yakuake 就会出现并抢走焦点。我想对我的应用程序执行同样的操作。

我知道有一些窗口管理器规则阻止应用程序执行此操作,但 Yakuake 正在执行此操作,为什么我无法执行此操作?

此外,此应用程序旨在与 Windows、Linux 和 Mac 兼容,因此不会出现 KDE 或 Gnome 或 < insert_your_favourite_window_manager_here > 黑客行为;我不会采取检测 WM 并进行黑客攻击的方式。

PS:我正在用 C++ 和 Qt4 开发该应用程序。

编辑:

为了说清楚,我不要求任何代码(但如果您确实有一些示例,我很感激)。我正在寻求一种方法来做到这一点。我应该怎么做才能让 WM 将焦点分配给我的应用程序。有没有标准的方法可以做到这一点?

最佳答案

关于c++ - 窃取焦点(有充分的理由),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13085018/

相关文章:

c++ - 强制显示系统托盘通知气球

c++ - 比较二维数组结果的问题!

c++ - 使用 const 引用的函数模板重载决议

c++ - 在不知道文件名的情况下对外部头文件使用 cmake 的 automoc

c++ - Qt QComboBox 每个项目具有不同的背景颜色?

c++ - 如何使用Linux收集错误

Qt 颜色选择器小部件?

javascript - Vue.js 将值显示为价格,但将其保留为 int

winforms - TreeView 在 Ctrl+Click 上重新获取焦点

Android 在焦点期间劫持输入字段的 CSS?