QT QFileDialog文件选择对话框

QT QFileDialog文件选择对话框

选择txt或者cpp文件,读取内容并显示

参考:

QT写入文件与读取文件内容_qt往一个文件写东西-CSDN博客

复制代码
#include "QtFilePreview.h"
#include "qfiledialog.h"
#include "qfile.h"
#include "qtextstream.h"
#include "qfileinfo.h"

QtFilePreview::QtFilePreview(QWidget *parent)
    : QMainWindow(parent)
{
    ui.setupUi(this);
    ui.textEdit_preview->setReadOnly(true);
    ui.label_preview->setScaledContents(true);
    connect(ui.pushButton_open, &QPushButton::clicked, this, [=] {
        QString fileName = QFileDialog::getOpenFileName(this,tr("Open File"),"",tr("All Files(*.*)"));
        if (!fileName.isEmpty())
        {
            QFile file(fileName);
            if (file.open(QIODevice::ReadOnly | QIODevice::Text))
            {
                QTextStream in(&file);
                ui.textEdit_preview->setText(in.readAll());
                file.close();

                QFileInfo fileInfo(fileName);
                QPixmap pixmap(fileInfo.absolutePath());
                ui.label_preview->setPixmap(pixmap.scaled(ui.label_preview->size(),Qt::KeepAspectRatio,Qt::SmoothTransformation ));


            }
        }

        });
}

QtFilePreview::~QtFilePreview()
{}
相关推荐
devil-J18 小时前
vue3+three.js中国3D地图
开发语言·javascript·3d
Xiaoᴗo.19 小时前
C语言2.0---------
c语言·开发语言·数据结构
ghie909019 小时前
MATLAB 解线性方程组的迭代法
开发语言·算法·matlab
人道领域19 小时前
【LeetCode刷题日记】:151翻转字符串的单词(两种解法)
java·开发语言·算法·leetcode·面试
XS03010619 小时前
Java 基础(五)值传递
java·开发语言
会编程的土豆19 小时前
【日常做题】栈 中缀前缀后缀
开发语言·数据结构·算法
阿扬ABCD19 小时前
python项目:外星人入侵小游戏
开发语言·python·pygame
不吃香菜学java1 天前
Redis的java客户端
java·开发语言·spring boot·redis·缓存
贵沫末1 天前
python——打包自己的库并安装
开发语言·windows·python
文祐1 天前
C++类之虚函数表及其内存布局(一个子类继承一个父类)
开发语言·c++