我尝试做与Qt5 callout example几乎完全相同的事情,但我发现如果您在系列中调用setUseOpenGL(true)
,则会显示标注< em>在行下而不是在它上面。
无论zValue
设置为什么,都是如此,包括m_tooltip->setZValue(std::numeric_limits<qreal>::max());
有解决方法吗?
答案 0 :(得分:1)
这是因为OpenGL加速系列通过在实际QGraphicsView之上创建QOpenGLWidget来工作,如useOpenGL property的文档中所述:
如果您在包含加速系列的图表顶部绘制任何图形项目,则会在这些项目上绘制加速系列。
基本上,当Callout在QGraphicsView中呈现时,当启用OpenGL时,会在QGraphicsView之上创建QOpenGLWidget,因为标注出现在该行下方。