您好,我正在使用 QT 将图像加载到 GUI。我可以轻松地将一个文件加载到一个标签中。当我想将新图像加载到同一个标签中时,就会出现问题。本质上,我想更新该标签。我试图通过按下一个使用 SetPixmap 作为插槽功能的按钮来做到这一点。但是,使用 SetPixmap 的直接调用可以工作,但是当它在插槽中时,它对我不起作用。
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <iostream>
#include <qdebug>
#include <QLabel>
#include <QPixmap>
#include <QTcore>
using namespace std;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QImage Hellkite_Tyrant;
Hellkite_Tyrant.load(":/MtGimages/HT.jpg");
QImage Island;
Island.load(":/MtGimages/Island.jpg");
if(Hellkite_Tyrant.isNull())
{
ui->textlabel->setText("Did not work");
}
//ui->myLabel->setPixmap(QPixmap::fromImage(Hellkite_Tyrant));
ui->myLabel->hide();
connect(ui->pushButton,SIGNAL(clicked()),
ui->myLabel,SLOT(setPixmap(QPixmap::fromImage(Hellkite_Tyrant))));
connect(ui->pushButton,SIGNAL(clicked()),
ui->myLabel,SLOT(show()));
// connect(ui->pushButton_2,SIGNAL(clicked()),
// ui->myLabel,SLOT(setPixmap(QPixmap::fromImage(Island))));
// connect(ui->pushButton_2,SIGNAL(clicked()),
// ui->myLabel,SLOT(repaint()));
// connect(ui->pushButton_2,SIGNAL(clicked()),
// ui->myLabel,SLOT(show()));
}
MainWindow::~MainWindow()
{
delete ui;
}