我正在尝试做与 Qt5标注示例几乎完全相同的事情,但我发现如果您调用setUseOpenGL(true)
该系列,那么标注会出现在线条下方而不是上方。
无论zValue
设置什么都是如此,包括m_tooltip->setZValue(std::numeric_limits<qreal>::max());
有解决方法吗?
我正在尝试做与 Qt5标注示例几乎完全相同的事情,但我发现如果您调用setUseOpenGL(true)
该系列,那么标注会出现在线条下方而不是上方。
无论zValue
设置什么都是如此,包括m_tooltip->setZValue(std::numeric_limits<qreal>::max());
有解决方法吗?
发生这种情况是因为 OpenGL 加速系列通过在实际 QGraphicsView 之上创建QOpenGLWidget来工作,如useOpenGL 属性的文档中所述:
如果您在包含加速序列的图表顶部绘制任何图形项,则会在这些项上绘制加速序列。
基本上,由于标注是在 QGraphicsView 内呈现的,当启用 OpenGL 时,会在 QGraphicsView 之上创建一个 QOpenGLWidget,并且因为标注出现在线条下方。