这里直接调用了PaintEvent()事件。
代码如下:
//paintedwidget.h
#ifndef PAINTEDWIDGET_H
#define PAINTEDWIDGET_H
#include <QtWidgets/QWidget>
#include "ui_paintedwidget.h"
#include <QPainter>
class PaintedWidget : public QWidget
{
Q_OBJECT
public:
PaintedWidget(QWidget *parent = 0);
~PaintedWidget();
protected:
void paintEvent(QPaintEvent *);
private:
Ui::PaintedWidgetClass ui;
};
#endif // PAINTEDWIDGET_H
//paintedwidget.cpp
#include "paintedwidget.h"
PaintedWidget::PaintedWidget(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);
resize(800, 600);
setWindowTitle(tr("Paint Demo"));
}
PaintedWidget::~PaintedWidget()
{
}
void PaintedWidget::paintEvent(QPaintEvent *)
{
/////////反锯齿
/*QPainter painter(this);
painter.setPen(QPen(Qt::black, 5, Qt::DashDotLine, Qt::RoundCap));
painter.setBrush(Qt::yellow);
painter.drawEllipse(50, 150, 200, 150);
painter.setRenderHint(QPainter::Antialiasing, true);
painter.