QTQBitmap 与QPixmap之间的区别

工程文件:

 

mywidget.h:

 

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>

namespace Ui {
class MyWidget;
}

class MyWidget : public QWidget
{
    Q_OBJECT

public:
    explicit MyWidget(QWidget *parent = 0);
    ~MyWidget();
protected:
    //重写绘图事件
    //如果是给窗口绘图,一定要在paintEvent()绘图,
    void paintEvent(QPaintEvent *event);
private:
    Ui::MyWidget *ui;
};

#endif // MYWIDGET_H

 

 

mywidget.cpp:

#include "mywidget.h"
#include "ui_mywidget.h"
#include <QPainter>
#include <QBitmap>
MyWidget::MyWidget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::MyWidget)
{
    ui->setupUi(this);
}

MyWidget::~MyWidget()
{
    delete ui;
}
//这一节主要讲的的bitmap和pixmap之间的区别,bitmap是黑白图,pixmap是彩色的,假如仅仅是黑白色的,就使用bitmap
void MyWidget::paintEvent(QPaintEvent *event)
{
    QPainter p(this);
    //QPixmap 图片背景透明
    p.drawPixmap(0,0,QPixmap(":/res/2.png"));
    //QBitmap 图片背景透明
    p.drawPixmap(300,0,QBitmap(":/res/2.png"));

}

 

posted @ 2019-07-05 11:41  Mr_Song_D  阅读(666)  评论(0编辑  收藏  举报