[英]How to Display a “*.png” file on a UI in QT framework?
我是Qt Framework的新手......
我想在我的Form1.ui中显示.png图片,所以我从小工具框中拖放了一个图形视图,然后我将test.png放在同一目录中(在项目文件夹中)
我在代码中这样做了
//Form1.cpp
#include "form1.h"
#include "ui_form1.h"
Form1::Form1(QWidget *parent) :
QWidget(parent),
ui(new Ui::Form1)
{
ui->setupUi(this);
ui->Pic1->setStyleSheet("background-image: url(test.png)");
}
Form1::~Form1()
{
delete ui;
}
//Form1.h
#ifndef FORM1_H
#define FORM1_H
#include <QWidget>
namespace Ui {
class Form1;
}
class Form1 : public QWidget
{
Q_OBJECT
public:
explicit Form1(QWidget *parent = 0);
~Form1();
private:
Ui::Form1 *ui;
};
#endif // FORM1_H
它编写得很完美,但照片没有出现,我错了什么?
这是我的qrc:
您应该用来显示图片的小工具是QLabel
。 您可以通过设置pixmap
属性直接从QtCreator完成。
正如其他人所说,您应首先创建一个资源文件,然后将该图像添加到该资源文件中。 要创建Qt资源文件,请转到菜单:文件> Qt> Qt资源文件。
编辑以编程方式执行:
//names starting with : means that they are on a resource file,
//otherwise in the filesystem
QPixmap * mypix = new QPixmap(":/karim/test.png");
ui->your_label->setPixmap(mypix);
delete mypix;
您需要将图像添加到资源文件: http : //doc.qt.io/qt-5/resources.html
如果你的资源中有png,可能会更改你的background-image:标签:
ui->Pic1->setStyleSheet("background-image: url(:/test.png)");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.