gpt4 book ai didi

c++ - QGraphicsView 人工制品

转载 作者:行者123 更新时间:2023-11-30 04:28:46 26 4
gpt4 key购买 nike

我的 QGraphicsView 有一些问题。我将 QGraphicsView 子类化以重新定义 paintEvent。我想使用 QGraphicsItem 绘制某种树的节点和 QGraphicsLineItem 的边缘。

void GraphicsView::paintEvent ( QPaintEvent * event ) {
if(arbre!=NULL) {
arbre->line1->setLine(arbre->text->x(),arbre->text->y(),
arbre->text1->x(),arbre->text1->y());

QGraphicsView::paintEvent(event);
cout << "redessine" << endl;
}

但是当我快速移动节点时, View 中会出现一些人工制品(黑线)。有什么建议摆脱那些吗?

最佳答案

请务必在 QGraphics*Item 子类的 boundingRect() 方法中包含边距。

http://qt-project.org/doc/qt-4.8/qgraphicsitem.html#boundingRect

PS:不要将逻辑放在paintEvent 方法中。此方法用于呈现内容,而不是收集 UI 字段内容或其他内容 (arbre->line1->setLine)

关于c++ - QGraphicsView 人工制品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9859974/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com