0

对于一种 CAD 应用程序,我首先创建了一个 QWidget(用作 2D 编辑器),并在 QTabWidget 的选项卡中启用了鼠标跟踪。正如预期的那样,绘制和移动线条超级快。

接下来,我创建一个带有 QOpenGLWidget 的新选项卡(用作 3D 视图)。没有鼠标跟踪,但是当按下按钮时它对 mouseMoveEvent() 的反应非常快。正如预期的那样。

现在,当我将选项卡切换回 QWidget 时,mouseMoveEvents 变得非常慢。为什么?切换回 GL 表明 QOpenGLWidget 仍然反应迅速。

我将 QDebug 输出插入到 paintGL() - 它没有被调用。接下来我取消了initializeGL()、resizeGL() 和paintGL() 中所有代码的注释,因此根本没有GL 代码。还是同样的问题!

Qt 版本是 5.5.1,在 Ubuntu 14.04.5 LTS 上运行。

4

0 回答 0