对于一种CAD应用程序,我首先创建一个QWidget(打算作为2D编辑器),并在QTabWidget的选项卡中启用鼠标跟踪。绘制和移动线条的速度超预期。
接下来,我使用QOpenGLWidget(打算作为3D视图)创建一个新选项卡。没有鼠标跟踪,但是按下按钮时,它对mouseMoveEvent()的反应超快。符合预期。
现在,当我将选项卡切换回QWidget时,mouseMoveEvents变得非常缓慢。为什么?切换回GL表示QOpenGLWidget仍然反应迅速。
我将QDebug输出插入到paintGL()中-没有被调用。接下来,我取消注释initializeGL(),resizeGL()和paintGL()中的所有代码,因此根本没有GL代码。还是同样的问题!
Qt版本是在Ubuntu 14.04.5 LTS上运行的5.5.1。