我是Qt的新手。我遇到了问题。我不想使用Qt表单创建QGprahics视图我只想编写代码而我无法使其工作。
这是我的代码:
main.cpp中:
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
scene = new QGraphicsScene(this);
scene->setSceneRect(600,480,600,480);
QGraphicsEllipseItem * ellipse;
QPen pen(Qt::red);
QBrush brush(Qt::blue);
ellipse = scene->addEllipse(150,150,100,100,pen, brush);
view = new QGraphicsView(scene,this);
setCentralWidget(view);
}
MainWindow::~MainWindow()
{
delete view;
delete scene;
}
视图和场景是MainWindow类的privete成员。
程序只显示白屏,但那里没有椭圆。
任何建议我做错了什么?提前谢谢!
答案 0 :(得分:4)
我认为你的问题是scene->setSceneRect(600,480,600,480);
。
您的椭圆是在视图之外创建的。