【发布时间】:2010-11-02 11:43:25
【问题描述】:
我希望应用的主窗口忽略鼠标和键盘事件,将它们传递给窗口管理器 Z 顺序中位于其下方的应用程序。
我知道如何让 child 小部件忽略键盘或鼠标事件,但是主窗口呢?
我正在尝试制作一个桌面小部件,它始终位于背景之上,并且对键盘和鼠标事件完全不可见。 (通过)
Qt::X11BypassWindowManagerHint 让我通过键盘(虽然遗憾的是 X11 特定,但现在还好),那么鼠标事件呢?
是否有一种与操作系统无关的方式对键盘事件透明?
编辑:
这里的关键词是透明度。
我不想吃鼠标和键盘事件,我想让窗口管理器知道我根本不想要它们。这些事件应该指向我在 zorder 下的任何应用程序。
例如,我希望能够单击小部件覆盖的桌面图标并与它们进行交互,就像小部件不存在一样。
【问题讨论】:
-
不知道为什么有人反对这个......完全合理的问题。不幸的是我没有答案,但我很确定它就在那里,因为如果我没记错的话,KDE 在桌面上有这些类型的小部件,它基于 Qt。
-
你找到 Linux 的解决方案了吗?
标签: qt event-handling desktop-application