1

QGraphicsWidgetから派生したクラスを持つシステムがあります。QGraphicsSceneのレイアウトで派生クラスオブジェクトを管理します。ここで、2つ以上のQGraphicsWidgetを含む複合アイテムが必要です。また、そのアイテムをレイアウト内に配置する必要があります。そこで、QGraphicsItemGroupを選択し、このようにクラスを記述します。

class CompositeItem : public QGraphicsItemGroup,public QGraphicsLayoutItem
{   
   ...  
};

sizeHint関数を再度実装しただけです。CompositeItemインスタンスをレイアウトに追加すると、表示されません。これは何が原因でしょうか?どこを間違えたの?

4

2 に答える 2

0

レイアウトに追加した後、QGraphicsItemGroupまたはQGraphicsWidgetsのいずれかでshow()を呼び出します。

于 2010-05-04T19:22:22.260 に答える
0

setGraphicsItem( this ) をコンストラクターに追加します。

于 2014-02-27T10:11:24.833 に答える