使用Qt的painter编写了一个简单的小程序,结果没有绘制图形,也没有错误提示?请问怎么解决?
widget.h如下:
#ifndef WIDGET_H
#define WIDGET_H
#include
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
//绘图事件
void PaintEvent(QPaintEvent *ev);
private:
Ui::Widget *ui;
};
#endif // WIDGET_H
widget.cpp如下:
#include "widget.h"
#include "ui_widget.h"
#include
#include"qpainter.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
void Widget::PaintEvent(QPaintEvent *ev)
{
QPainter painter(this); //创建画板
painter.drawLine(QPoint(0,0),QPoint(200,200)); //画一条线
painter.drawEllipse(QPoint(200,200),50,50); //画一个圆
}
Widget::~Widget()
{
delete ui;
}}
运行结果是个空白窗口,请问怎么个回事,如何解决?