QPainter使用

Posted werial

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QPainter使用相关的知识,希望对你有一定的参考价值。

分享即是快乐!

QPainter绘图设备添加背景图

创建Widget对象,在.h文件添加如下代码:

protected:

cpp代码如下:

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::paintEvent(QPaintEvent*)
{
  //绘制代码部分 QPainter p(this); //也可以不指定this对象 在后面p.begin(); 但是必须以p.end();结束
  
  p.begin();
  p.drawPixmap(0,0,width(),height(),QPixmap("../image/IMG_3397.JPG"));   //image需放在工程同级目录,不能放在代码目录。否则会不显示图片
  //p.end();
}

  

void paintEvent(QPaintEvent *);      虚函数,重写

.h文件如下:

#define WIDGET_H

#include <QWidget>
#include <QPainter>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

private:
    Ui::Widget *ui;
protected:
    void paintEvent(QPaintEvent *);
};
#endif // WIDGET_H

以上是关于QPainter使用的主要内容,如果未能解决你的问题,请参考以下文章

设置 QPainter 背景

Qt:在子部件上使用 QPainter

如何在 QLabel 中使用 QPainter

程序不使用 QPainter 画线

QPainter 在使用 QPropertyAnimation 时崩溃

如何使用 OpenGL 3.3 格式的 QPainter?