1

アプリケーションで QGraphicsScene/QGraphicsView ペアを使用しています。私は自分の目的のためにそれらをサブクラス化しました。ペアを生成するコード スニペットは次のとおりです。

itsScene = new QGraphicsScene;
itsView = new QGraphicsView;
itsView->setParent(itsCanvas);

itsView->setGeometry(20,20,1700,720);
itsView->setBackgroundBrush(Qt::black);
itsView->setAlignment(Qt::AlignTop);
itsView->setScene(itsScene);

QGraphicsScene にいくつかのウィジェットを追加した後、アプリケーションの最終的な UI スナップショットを以下に示します アプリケーション UI のスナップショット 。何が原因でしょうか? ウィジェットに負の座標を使用しています。それと関係あるの?

4

1 に答える 1

3

負の座標が原因である可能性があります。QGraphicsSceneその中のすべてのアイテムの境界を組み合わせて、その境界矩形を計算します。

シーンの境界がわかっている場合は、 を呼び出しsetSceneRectて既知の四角形に修正します。このようにして、範囲外に配置されたグラフィックス アイテムによって、シーンが必要以上に拡張されることはありません。

于 2010-07-01T14:14:53.660 に答える