3

我想QGraphicsView使用QGraphicsItem. 但我不知道如何根据三角形来实现边界矩形。

4

2 回答 2

8

你可以使用一个QGraphicsPolygonItem.

您只需要使用QGraphicsScene::addPolygon()QPolygonF描述一个三角形多边形,然后将其添加到您的场景中。

// Describe a closed triangle
QPolygonF Triangle;
Triangle.append(QPointF(-10.,0));
Triangle.append(QPointF(0.,-10));
Triangle.append(QPointF(10.,0));
Triangle.append(QPointF(-10.,0));

// Add the triangle polygon to the scene
QGraphicsPolygonItem* pTriangleItem = pScene->addPolygon(Triangle);

这样,一切都由 Qt 处理,您不必担心边界矩形。

于 2010-10-19T07:15:43.683 回答
0

要绘制三角形,您需要 3 个点并在它们之间画线。子类QGraphicsItem和子类draw triangle的paint方法中设置item,QGraphicsScene然后将场景添加到QGraphicsView

于 2010-10-19T07:03:34.633 回答