QT学习教程-(2)QT读取图片并显示打包exe

 0.学习目标

编写一个QT读取显示图片的工程,并打包成可以运行的exe软件。

1.软件

(1)QT5.14

(2)VS2017

2.建立工程

(1)新建工程

(2)设置kit选择

(3)编辑UI界面

双击mainwindow.ui,计入qtdesinger编辑界面

(4)设置显示窗口和触发按钮

分别从左侧拖拽出label和push button,QLabel,QLineEdit并分设置名称

 

(5)设置点击槽函数

鼠标右击“点击按钮”,点击“转到槽”,选择“click()”会跳转到槽函数,

 

 3.代码

3.1 mainwindows.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QDebug>
#include <QFileDialog>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:
    void buttonReadImage();

private:
    Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H

3.1 mainwindows.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::buttonReadImage(){
    QString open_file, open_file_path;
    QImage image;

    open_file = QFileDialog::getOpenFileName(this,
                                             "please choose an image file",
                                             "",
                                             "Image Files(*.jpg, *.png, *.bmp);;All(*.*)");

    if (open_file != ""){
        if (image.load(open_file)){
            //显示图片,设置合适的尺寸
            ui->label->setPixmap(QPixmap::fromImage(image).scaled(ui->label->size()));
        }
    }

    QFileInfo open_file_info;
    open_file_info = QFileInfo(open_file);
    open_file_path = open_file_info.filePath();
    ui->lineEdit->setText(open_file_path);

}

 使用 crt+R运行程序,点击按钮,加载图片。

3.软件打包

 把qt程序打包成独立运行的软件。

(1)添加图标

 在pro文件下添加程序的图标,图标的格式必须为ico格式,在pro文件中添加如下语句。

 (2)修改编译模式为release模式

选择release模式后,点击编译,会在工程目录下生成release目录

 

(3) 利用windeployqt工具打包程序

把生成的.exe文件拷贝出来放在我们自己创建的文件夹下,

然后用qt的对应的cmd窗口执行windeployqt命令打包程序。

执行完后就可以看到test文件夹里面自动复制的插件文件、dll文件、qm文件等,在这里就得到了完全程序发布集合。

 

 

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值