小编Shu*_*han的帖子

如何禁用鼠标事件到小部件但不是Qt的子节点?

从最近两天开始,我正在搜索并找出一种方法将鼠标事件传递给窗口小部件后面的窗口小部件,该窗口小部件用作其子容器的容器/父窗口.我知道有一种方法可以使小部件对于像这样的鼠标事件透明:

QWidget w;
w.setAttribute( Qt::WA_TransparentForMouseEvents );
Run Code Online (Sandbox Code Playgroud)

但这也禁止向其孩子发送鼠标事件!实际上我希望前面小部件的子节点和前面小部件后面的小部件响应鼠标事件.

Qt :: WA_TransparentForMouseEvents:启用后,此属性将禁用向窗口小部件及其子窗口传递鼠标事件.鼠标事件被传递到其他窗口小部件,就好像窗口小部件及其子窗口不存在于窗口小部件层次结构中一样; 鼠标点击和其他事件有效地"通过"他们.默认情况下禁用此属性.

如果您对如何使鼠标事件透明,而不是它的孩子有任何想法,那么请分享!

qt parent-child transparent mouseevent

11
推荐指数
1
解决办法
5791
查看次数

标签 统计

mouseevent ×1

parent-child ×1

qt ×1

transparent ×1