您的位置:首页 > 编程语言 > Qt开发

一个显示图片的小例子

2018-03-17 15:20 309 查看
我们使用drawPixmap()来显示图片,基本思路如下:1、建立项目文件夹,我这里文件夹/类名/窗口名都是displayPgm,baseclass 可以选择mainwindow;2、讲我们需要显示的图片添加到我们创建的文件中去3、ui界面编写:在设计器里面拖入一个QFrame控件,注意将控件的名称改为viewFrame;4、在<displaypgm.h>头文件中添加需要的头文件:#include <QPixmap>
#include <QPaintEvent>
        然后添加私有属性和函数:
QPixmap image;
protected:
void paintEvent(QPaintEvent *);
具体代码如下:
#ifndef DISPLAYPGM_H
#define DISPLAYPGM_H
#include <QMainWindow>
#include <QPixmap>
#include <QPaintEvent>
namespace Ui {
class displayPgm;
}
class displayPgm : public QMainWindow
{
Q_OBJECT
public:
explicit displayPgm(QWidget *parent = 0);
~displayPgm();
private:
Ui::displayPgm *ui;
QPixmap image;
protected:
void paintEvent(QPaintEvent *);
};
#endif // DISPLAYPGM_H
5、在displayPgm中显示图片,具体代码如下:#include "displaypgm.h"
#include "ui_displaypgm.h"
#include <QPainter> //声明画笔QPainter工具
double x,y;
displayPgm::displayPgm(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::displayPgm)
{
ui->setupUi(this);
image.load("../displayPgm/China.jpg");
}
displayPgm::~displayPgm()
{
delete ui;
}
void displayPgm::paintEvent(QPaintEvent *)
{
QPainter painter(this);
    int x4000= ui->viewFrame->pos().x();
int y = ui->viewFrame->pos().y();
painter.drawPixmap(x,y,ui->viewFrame->width(),ui->viewFrame->height(),image);
}
6、然后编译即可显示图片在窗口。

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  qt image
相关文章推荐