C++ QVBoxLayout添加一个QGraphicsScene并显示
时间: 2024-02-21 10:01:33 浏览: 145
可以使用如下的C++代码实现:
```cpp
#include <QApplication>
#include <QGraphicsView>
#include <QGraphicsScene>
#include <QVBoxLayout>
#include <QWidget>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建QGraphicsView和QGraphicsScene
QGraphicsView view;
QGraphicsScene scene;
view.setScene(&scene);
// 创建QWidget并设置布局为QVBoxLayout
QWidget widget;
QVBoxLayout *layout = new QVBoxLayout(&widget);
layout->addWidget(&view);
// 添加一个矩形到QGraphicsScene中
QGraphicsRectItem *rect = scene.addRect(0, 0, 100, 100);
rect->setFlag(QGraphicsItem::ItemIsMovable);
widget.show();
return app.exec();
}
```
在这个例子中,我们创建了一个QGraphicsView和QGraphicsScene。然后,我们创建了一个QWidget,并将其布局设置为QVBoxLayout。接着,我们将QGraphicsView添加到QVBoxLayout中。最后,我们添加了一个矩形到QGraphicsScene中,并将其设置为可移动的。注意,这里我们使用了QGraphicsItem::ItemIsMovable标志来设置矩形可移动。最后,我们显示QWidget并启动应用程序的事件循环。
阅读全文