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()
{}
相关推荐
caimouse20 分钟前
ReactOS 窗口系统分析(23):键盘 — keyboard.c + kbdlayout.c
c语言·开发语言·计算机外设
Emily1568535987042 分钟前
Emerson 1C31129G03 Analog Input Module
java·开发语言·前端·plc·emerson·1c31129g03·input module
就叫_这个吧6 小时前
Java递归方法实现面包屑导航
java·开发语言
fīɡЙtīиɡ ℡6 小时前
AI 应用系统设计
java·开发语言·人工智能
今天AI了吗7 小时前
Python 基础语法(一):常量、变量、输入输出与运算符
开发语言·数据库·人工智能·python·sql·深度学习·机器学习
TELL5218 小时前
selenium webdriver 第二次初始化的异常
开发语言·python
动词ing8 小时前
【C语言】自定义函数+指针入门
c语言·开发语言·算法
重生之后端学习9 小时前
283. 移动零[简单]✅
开发语言·数据结构·算法·leetcode·职场和发展
动词ing9 小时前
【C语言】结构体+文件基础
c语言·开发语言·数据结构
caimouse10 小时前
ReactOS 窗口系统分析(7):分层窗口与绘制辅助 — layered.c + draw.c
c语言·开发语言