QGraphicsView *view=new QGraphicsView(scene);
时间: 2023-10-29 15:18:23 浏览: 120
这段代码是用来创建一个名为view的QGraphicsView对象,并将一个已经存在的名为scene的QGraphicsScene对象作为参数传入。QGraphicsView是用来显示QGraphicsScene中的内容的,通过QGraphicsView可以进行缩放、平移等操作,使得内容在视图窗口中能够以合适的大小和位置展示。
相关问题
QGraphicsView* view = new QGraphicsView(this); QGraphicsScene* scene = new QGraphicsScene(this);
这段代码创建了一个名为 `view` 的 `QGraphicsView` 对象,并将其添加到当前对象的父对象中。接着创建了一个名为 `scene` 的 `QGraphicsScene` 对象,并将其添加到当前对象的父对象中。这个场景可以在视图中显示,它可以包含各种 `QGraphicsItem` 对象(如 `QGraphicsPixmapItem`、`QGraphicsTextItem` 等),这些对象可用于绘制图形和文本等内容。通过 `view->setScene(scene)` 将 `scene` 对象设置为 `view` 的场景,即在视图中显示场景中的内容。
QGraphicsView* view = new QGraphicsView(this); QGraphicsScene* scene = new QGraphicsScene(this);使用这两个时,左上角会多一个小图
这个小图是 QGraphicsView 的默认背景,它通常用于显示场景区域的边框。如果你不希望显示这个小图,可以通过以下两种方式之一来禁用它:
1. 在创建 QGraphicsView 对象时,通过以下代码禁用默认背景:
```cpp
QGraphicsView* view = new QGraphicsView(this);
view->setBackgroundBrush(Qt::NoBrush);
```
2. 在设置场景时,通过以下代码设置场景的背景为透明色:
```cpp
QGraphicsScene* scene = new QGraphicsScene(this);
scene->setBackgroundBrush(Qt::transparent);
QGraphicsView* view = new QGraphicsView(scene, this);
```
这样就可以禁用默认背景,让视图区域完全透明。
阅读全文