1

我将我的 Qt 应用程序从 Qt 5.3 转换为 5.6。以前我使用 QGLWidget,现在升级到 QWidget 中包含的 QOpenGLWindow。我希望我的窗口能够处理一些按键事件。QOpenGLWindow 确实具有处理键盘事件的受保护方法。但是,与旧的 QGLWidget 不同,它没有 setFocus() 方法,并且没有调用我的处理程序。补救措施是什么?即使当我尝试将焦点设置到拥有的容器上,然后手动将事件传递给 QOpenGLWindow 时,似乎也没有任何事件发生。

4

1 回答 1

0

我设法通过将 eventFilter 添加到我的 QOpenGLWindow 子类然后为拥有容器(及其一些父容器)安装事件过滤器来解决问题。

于 2016-05-13T20:07:56.040 回答