Друзьям всегда нужно реализовывать функции boundingRect () и paint (..), если вы хотите отобразить график на сцене.Документация Qt гласит:
Чтобы написать свой собственный графический элемент, вы сначала создаете подкласс QGraphicsItem, а затем начинаете с реализации двух его чисто виртуальных открытых функций: boundingRect (), который возвращает оценкуобласть, нарисованная элементом, и paint (), которая реализует фактическую рисование.Например:
class SimpleItem : public QGraphicsItem
{
public:
QRectF boundingRect() const
{
qreal penWidth = 1;
return QRectF(-10 - penWidth / 2, -10 - penWidth / 2,
20 + penWidth, 20 + penWidth);
}
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
QWidget *widget)
{
painter->drawRoundedRect(-10, -10, 20, 20, 5, 5);
}
};