小编kar*_*rim的帖子

以编程方式在Qt中设置QLabel的像素图

我们用来显示图片的Widget是QLabel.我们可以通过设置pixmap属性直接从QtCreator中完成.

我们应该首先创建一个资源文件,然后将该图像添加到该资源文件中.要创建Qt资源文件,我们转到菜单:File> Qt> Qt Resource File.

我们可以使用Qt Creator设置QLabel的图像...

但我想根据用户的一些输入改变图片

我试着做以下事情:

#include "form1.h"
#include "form.h"
#include "ui_form.h"
#include "ui_form1.h"

Form::Form(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Form)
{
    ui->setupUi(this);
    QPixmap * mypix = new QPixmap(":/karim/test.png");
    ui->label->setPixmap(mypix);
    delete mypix;
}
Run Code Online (Sandbox Code Playgroud)

但我得到了这个错误

..\Project\form.cpp: In constructor 'Form::Form(QWidget*)':

..\Project\form.cpp:12: error: no matching function for call to 'QLabel::setPixmap(QPixmap*&)'

c:\QtSDK\Simulator\Qt\mingw\include/QtGui/qlabel.h:123: note: candidates are: void QLabel::setPixmap(const QPixmap&)
Run Code Online (Sandbox Code Playgroud)

可能是什么问题呢 ?

c++ qt

6
推荐指数
1
解决办法
3万
查看次数

如何在QT框架中的UI上显示"*.png"文件?

我是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
Run Code Online (Sandbox Code Playgroud)

它编写得很完美,但照片没有出现,我错了什么?

这是我的qrc:

c++ user-interface qt png

5
推荐指数
1
解决办法
2万
查看次数

在Qt中滚动滚动区域

我只有一个包含几个Qlabels的Scroll Area小部件.

看看情况:

滚动区域内的小部件

我试图做以下但它没有成功,它不滚动...

#include "form1.h"
#include "form.h"
#include "ui_form.h"
#include "ui_form1.h"
#include<QScrollArea>
#include<QScrollBar>


Form::Form(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Form)
{
    ui->setupUi(this);
    ui->scrollAreaWidgetContents->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
    ui->scrollAreaWidgetContents->resize(ui->scrollArea->size().width() ,ui->scrollArea->size().height());
    ui->scrollArea->setWidgetResizable(true);
    ui->scrollArea->setWidget(ui->scrollAreaWidgetContents);
    ui->scrollAreaWidgetContents->adjustSize();

}
Run Code Online (Sandbox Code Playgroud)

请问你能说出我做错了什么或者什么不理解?请具体,我将不胜感激......

c++ qt scroll

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×3

qt ×3

png ×1

scroll ×1

user-interface ×1