Qt:QMouseEvent 不会从 QGLWidget 传播
Qt: QMouseEvent not propagating out of QGLWidget
QGLWidget是否有可能传播其鼠标事件?
我目前有一个 QGlWidget 作为我的主窗口的子窗口,但我似乎无法处理在其框架上发生的鼠标事件。
也许我犯了一个根本性的缺陷,但是 qglwidet 本身中的鼠标事件被设置为 event->accept(),我也没有阻止来自 qglwidget 的传出信号。
我有一个解决方法,我只是从 qglwidget 中的每个鼠标事件中发出新信号,并在我的主窗口中连接它们,但我只是好奇这是否是一个已知问题,我做错了,或者如果根本不可能。
来自 Qt 文档中关于接受事件:
设置 accept 参数表示事件接收器需要 事件。不需要的事件可能会传播到父小组件。
因此,当您接受小部件上的鼠标事件时,它不会传播到主窗口。可以在QGlWidget
中处理事件,但不必设置接受标志。只需将其传播到父级即可。
相关文章:
- cmake 使用 find_package 传播依赖项
- 如何构建Qt + cmake + QGLWidget
- 组合"%"和可选后缀时,自动属性传播有时不起作用
- 跨目标传播库依赖项
- 张量流 c++ API 是否支持反向传播的自动微分?
- 升级到G++4.8-exception_ptr.h不支持异常传播
- 在 C++ 中将 char 转换为 int,而无需符号位传播
- 为什么需要 FPU 重置以防止 NaN 结果传播到下一个计算结果?
- 为什么'std::p mr::p olymorphic_allocator'不会在容器移动时传播?
- 如何传播 NodeJS 包装C++代码的函数故障?
- 从升压::p罗塞斯到升压::子级的信号传播
- 模拟一个函数,该函数像操作员=和破坏者一样传播到每个字段
- 如何传播未定义数量的模板参数
- 使用 std::future::unwrap 进行异常传播
- 为什么 CMake COMPILER_DEFINITIONS不传播到子目录?
- 精神 X3 无法传播可选<vector>类型的属性
- 库链接器传播:libA->libB->App 是否与 libA->App<-libB 相同
- 对象传播
- 在qtquick 1.1中传播定位的事件为背景项目
- Qt:QMouseEvent 不会从 QGLWidget 传播