【问题标题】:QGraphicsView RubberBandDrag leaves artifactsQGraphicsView RubberBandDrag 留下工件
【发布时间】:2017-11-13 13:24:32
【问题描述】:

我设置了一个 QGraphicsView 和一个 QGraphicsScene,但没有更改任何属性,但是

view->setDragMode(QGraphicsView::RubberBandDrag);
view->setRenderHint(QPainter::Antialiasing, true);

当稍微拖动 arround 时,RubberBandDrag 会留下伪影,并且 RubberBand 本身经常渲染不正确,缺少侧面:

此外,其他图形项(例如常规 QGraphicsRectItem)也会留下这些痕迹。我尝试不使用抗锯齿,但这似乎使情况变得更糟。

我是否必须设置视图/场景的特定属性,例如禁用优化标志?

或者这只是 Qt 的一个错误? (我使用的是 5.9.2) 至少我找不到这方面的报告。

【问题讨论】:

    标签: qt qgraphicsview qgraphicsscene qgraphicsitem artifacts


    【解决方案1】:

    我有类似的问题。在我玩了这两个电话之后,事情就解决了。

    QGraphicsView.setCacheMode(QGraphicsView::CacheBackground);
    
    QGraphicsView.setViewportUpdateMode(QGraphicsView::BoundingRectViewportUpdate);
    

    【讨论】:

      猜你喜欢
      • 2020-05-26
      • 1970-01-01
      • 2015-06-05
      • 2013-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多