精华内容
下载资源
问答
  • qt选择文件路径对话框
    千次阅读
    2018-10-09 17:39:51
    	QString filename;
    	QWidget *qwidget = new QWidget();
    	filename = QFileDialog::getOpenFileName(qwidget,"choose file","",nullptr);
    	QMessageBox::warning(NULL,"show path",filename);

     

    更多相关内容
  • 点击按钮,打开文件对话框选择文件,获取文件名路径文件信息、文件名处理
  • Qt文件选择对话框 QFileDialog

    千次阅读 2021-01-08 14:27:16
    使用系统QFileDialog 接口 1、先 newQFileDialog ,逐项设置 #include <QFileDialog> ... //定义文件对话框类 QFileDialog *fileDialog = new ... //设置打开的文件路径 fileDialog->setDire...

     使用系统 QFileDialog 接口

     

    1、先 new QFileDialog ,逐项设置

    #include <QFileDialog>	
    
        //定义文件对话框类
    	QFileDialog *fileDialog = new QFileDialog(this);
    
    	//定义文件对话框标题
    	fileDialog->setWindowTitle(QStringLiteral("选择文件"));
    
    	//设置打开的文件路径
    	fileDialog->setDirectory("./");
    
    	//设置文件过滤器,只显示.ui .cpp 文件,多个过滤文件使用空格隔开
    	fileDialog->setNameFilter(tr("File(*.ui* *.cpp*)"));
    
    	//设置可以选择多个文件,默认为只能选择一个文件QFileDialog::ExistingFiles
    	fileDialog->setFileMode(QFileDialog::ExistingFiles);
    
    	//设置视图模式
    	fileDialog->setViewMode(QFileDialog::Detail);
    	
        //获取选择的文件的路径
    	QStringList fileNames;
    	if (fileDialog->exec()) {
    		fileNames = fileDialog->selectedFiles();
    	}

    setFileMode 模式有四种(AnyFile, ExistingFile, Directory, ExistingFiles),分别表示默认模式,单个文件,文件夹,多个文件

     

    2、直接使用系统 get 接口

    	// 选择文件夹
        QString imageFolder = QFileDialog::getExistingDirectory(this, tr("选择文件保存路径"), "./", QFileDialog::ShowDirsOnly);
    	qDebug() << imageFolder << endl;
    
        // 选择文件
    	QString file;
    	QStringList files = QFileDialog::getOpenFileNames(this, tr("selected"), "./", tr("File(*.ui* *.cpp*)"), &file, QFileDialog::ShowDirsOnly);
    	qDebug() << "file " << file << endl;

     

     

     

    展开全文
  • 一、选择文件对话框 二、选择文件对话框 一、选择文件对话框 引用头文件 #include< QFileDialog> void DataFileMerge::SelectFile_Info(int i) { QString fileName = QFileDialog::...

    目录

     一、选择单文件对话框

     二、选择多文件对话框


    一、选择单文件对话框

    引用头文件 #include< QFileDialog>

    void DataFileMerge::SelectFile_Info(int i)
    {
    	QString fileName = QFileDialog::getOpenFileName(this,QStringLiteral("文件对话框!"),"F:",QStringLiteral("图片文件(*png *jpg);;""本本文件(*txt)"));
    }
    •  使用 QFileDialog 类中的 getOpenFileName() 函数来获取选择的文件名,这个函数会以模态方式运行一个选择文件对话框。
    • 选择文件后函数返回选择文件名。
    • 它的四个参数的作用分别是:指定父窗口、设置对话框标题、指定默认打开的目录路径和设置文件类型的过滤器。
    • 如果不指定文件过滤器,则默认选择所有类型的文件。
    • 注意:代码中 *png 和 *jpg 之间需要一个空格。
    • 可以设置不同类型的过滤器,不同类型间用两个分号 “;;”隔开。

    运行效果: 

     二、选择多文件对话框

    引用头文件 #include< QFileDialog>

    void DataFileMerge::SelectFile_Info(int i)
    {
        QStringList fileNames = QFileDialog::getOpenFileNames(this, QStringLiteral("选择多文件对话框!"), "F:",QStringLiteral("图片文件(*png * jpg);; ""文本文件(*txt)"));
    }
    
    •  使用 QFileDialog 类中的 getOpenFileName() 函数来获取选择的文件名,这个函数会以模态方式运行一个选择文件对话框。
    • 选择多个文件名存放在 QStringList 类型变量中。
    • 除了使用这些静态函数,还可以建立对话框对象来操作。
    • QFileDialog 类还提供了 getSaveFileName() 函数来实现保存文件对话框和文件另存为对话框。
    • QFileDialog 类还提供 getExistingDirectory() 函数来获取一个已存在的文件夹路径。

    运行效果:

    展开全文
  • 采用QT+MFC方式实现QT下多文件夹选择对话框

    1.QT QFileDialog默认是不支持多目录选择的,网上其他实现方式界面都比较丑,网图:

    2.参考MFC的多目录选择对话框,我采用了QT调用MCF库方式实现,QT和MFC参考大佬文章:

    VS2017编写MFC库以及使用Qt调用MFC库方法_长沙红胖子Qt的博客-CSDN博客_qt 调用lib

    效果图:

    首先上MFC实现代码

    头文件:

    extern "C" _declspec(dllexport) char * __stdcall OpenDirectory(char* title, char * dirpath);

    Cpp文件:

    char* __stdcall OpenDirectory(char* title, char* dirpath)
    {
        std::vector<CString>ans;
        CString allpath = _T("");
        CWnd* pWnd = NULL;
        AFX_MANAGE_STATE(AfxGetStaticModuleState());
        CFolderPickerDialog dlg(NULL, OFN_FILEMUSTEXIST | OFN_ALLOWMULTISELECT | OFN_ENABLESIZING, pWnd);
        dlg.m_ofn.lpstrTitle = CString(title);
        if (dlg.DoModal() == IDOK) {
            POSITION pos = dlg.GetStartPosition();
            while (pos) {
                ans.push_back(dlg.GetNextPathName(pos));
            }
        }
    
        for (std::vector<CString>::iterator iter = ans.begin(); iter != ans.end(); ++iter)
        {
            allpath = allpath + *iter + _T(";");
        }
        allpath= allpath.Left(allpath.GetLength() - 1);
        int len = WideCharToMultiByte(CP_ACP, 0, allpath, -1, NULL, 0, NULL, NULL);
        char* ptxtTemp = new char[len + 1];
        WideCharToMultiByte(CP_ACP, 0, allpath, -1, ptxtTemp, len, NULL, NULL);
        return ptxtTemp;
    }

    导出定义 .def

    ; OpenDirectoryLibrary.def: 声明 DLL 的模块参数。

    LIBRARY

    EXPORTS
        ; 此处可以是显式导出
        OpenDirectory @ 1

    最后:QT 端调用类

    采用内联类,不说废话 直接上代码 ,动态库编译后放QT编译后程序运行目录下

    #ifndef FOLDERMULTIDIALOG_H
    #define FOLDERMULTIDIALOG_H
    #include <QList>
    #include <QString>
    #include <QLibrary>
    
    #include <QTextCodec>
    #include <qDebug>
    
    class FolderMultiDialog
    {
    public :
        static QList<QString> FolderMultiDialog::getExistingDirectory(QString title= "选择目录")
        {
            QLibrary lib("OpenDirectoryLibrary.dll");
            if (lib.load()) {
                qDebug() << "load ok!";
            }
            else {
                qDebug() << "load failed!";
            }
            typedef char* (*OpenDirectory)(const char*, const char*);
            OpenDirectory fpAdd = (OpenDirectory)lib.resolve("OpenDirectory");
            QTextCodec* pCodec = QTextCodec::codecForName("GBK");
            QByteArray data = pCodec->fromUnicode(title);
            char* titledata = data.data();
            char* nSum = fpAdd(titledata, "");
            QString selectdirs = QString::fromLocal8Bit(nSum);
            QList<QString> selectdirlists = selectdirs.split(";");
            lib.unload();//卸载
            return selectdirlists;
        }
    };
    #endif

    QT下调用  超简单 一句话

    #include "FolderMultiDialog.h"
    
    QList<QString> dirs = FolderMultiDialog::getExistingDirectory("选择目录");

    展开全文
  • QT 打开选择文件对话框

    千次阅读 2019-11-28 15:15:21
    QString fileName = QFileDialog::getOpenFileName(this, tr("open file"), " ", tr("xml(*.xml);;Allfile(*.*)")); ui->GlassLayoutXMLLineEdit->...打开一个选择文件对话框 返回的fileName是选择文...
  • Qt之标准对话框文件对话框

    千次阅读 2021-08-06 11:00:13
    文件对话框(单文件) //需要包含此头文件 #include< QFileDialog> void Widget::on_FileButton_clicked() { QString fileName = QFileDialog::getOpenFileName(this, tr("文件对话框!"), ...
  • 打开文件 " ), lastPath);   connect: connect(ui->m_openFile,SIGNAL(clicked( bool )), this ,SLOT(showImage()));   转载于:https://www.cnblogs.com/wxl845235800/p/10769095.html
  • QString sPath = QFileDialog::getOpenFileName(this,"文件对话框",".","c++ files(*.cpp);;"); m_fileLineEdit->setText(sPath); } void Dialog::showColorDlg() { QColor color = QColorDialog::getColor...
  • QT文件选择对话框

    万次阅读 2019-01-26 22:01:07
    window操作系统中,通常会出现文件选择对话框,也就是选择一个文件,那么QT中也有类似的文件选择集成类。 //定义文件对话框类 QFileDialog *fileDialog = new QFileDialog(this); //定义文件对话框标题 ...
  • Qt文件浏览对话框

    2021-12-28 16:32:33
    Qt文件浏览对话框
  • Qt实现多选文件夹对话框

    千次阅读 2020-11-28 11:35:05
    Qt使用QFileDialog类可以实现文件选择对话框,多文件选择对话框,以及文件夹选择对话框,就是没有多文件夹选择对话框,做的并不是很完美无法直接调用win下的原生对话框,下面将介绍一下Qt实现多选文件夹对话框的两种...
  • QFileDialog::getopenFileName(this,"选择一个文件", 默认路径); 通过 QFileDialog::getopenFileNames(this,"选择一个文件", 默认路径); 我们还可以选择多个文件,但是这时候我们如果选择的是目录的话是没有办法...
  • Qt文件夹选择对话框

    万次阅读 2019-08-22 09:22:56
    文件夹选择对话框是使用getExistingDirectory()函数 来自头文件QFileDialog getExistingDirectory(QWidget *parent= nullptr, const QString &caption= QString(), const QString &dir= QString(), ...
  • 今天小编就为大家分享一篇Python 使用PyQt5 完成选择文件或目录的对话框方法。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 利用Qt对话框选择文件打开、保存路径 利用Qt对话框选择文件打开路径 在利用Qt开发软件时,有时需要由客户来选择保存文件路径,以增加灵活性。下面以保存一副图像为例,介绍如何利用Qt对话框选择文件保存路径。 ...
  • 编写一个简单的文本 文件编辑器,我们将使用 QFileDialog 来打开一个文本文件,并将修改过的文件 保存到硬盘。
  • 目录 一、文件管理 1、目录操作 1.1、QDir与QFileInfo 1.2、判断文件夹是否存在 1.3、创建目录 ...1.5、切换路径 ...1.6、遍历文件 ...4、标准文件对话框 5、标准消息对话框 一、文件管理 1、目录操作 ...
  • Qt文件保存对话框默认保存文件

    千次阅读 2021-03-22 17:02:16
    在调用Qt文件对话框用来保存文件时,有时候希望提供默认的文件名,具体该如何做呢? QString QFileDialog::getSaveFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &...
  • 打开文件选择对话框时,需要设置默认的打开路径: QFileDialog* fd = new QFileDialog(this); fd->setWindowTitle(tr("选择工件模型...")); if (part_path.isEmpty()) { //当前程序运行目录 QDir cur_...
  • Qt对话框标准的对话框QFileDialog对话框1.选择打开一个文件2.选择打开多个文件3.选择已有目录4.选择保存文件名QColorDialog对话框QFontDialog对话框QInputDialog标准输入对话框1.输入文字2.输入整数3.输入...
  • 利用Qt对话框选择文件保存路径

    万次阅读 2013-06-25 20:05:14
    利用Qt对话框选择文件保存路径 在利用Qt开发软件时,有时需要由客户来旋转保存文件路径,以增加灵活性。下面以保存一副图像为例,介绍如何利用Qt对话框选择文件保存路径。 利用的类是QFileDialog,成员函数是...
  • QStringList str_path_list = QFileDialog::getOpenFileNames(this, tr("选择转码文件"), tr("/home"), tr("视频文件(*.mp4 *.m3u8);;所有文件(*.*);;")); for (int i = 0; i < str_path_list.size(); i++){ ...
  • Qt窗口部件——对话框QDialog

    千次阅读 2022-04-08 11:13:58
    1. 模态和非模态对话框 2. 多窗口切换 2.1 信号和槽 2.2 练习信号和槽例程 2.3 自定义对话框 ...3.2 文件对话框 3.3 字体对话框 3.4 输入对话框 3.5 消息对话框 3.6 进度对话框 3.7 错误消息对话框 3.8 向导对话框
  • 这里写自定义目录标题消息对话框自定义消息对话框选择文件对话框输入对话框设置颜色对话框字体设置对话框 ui界面 消息对话框 在消息对话框的按钮上,右键,转到槽,在槽函数中编写函数 //消息对话框 void ...
  • QT 打开文件对话框

    2017-06-17 14:54:50
    一:  Qstring fileName = QFileDialog::getOpenFileName(this, tr("open file"), " ", tr("Allfile(*.*);...返回的是你选择文件的 绝对路径。 参数1:父窗口 参数2:对话框的标题 参数3:默认的打开的
  • QFileDialog类是文件对话框类, 通常我们打开、保存文件时弹出的显示目录文件夹的对话框就是用它创建的: 我们当然可以用通用办法即创建类对象来显示上述对话框窗口,不过QFileDialog类提供了更为方便的静态方法来...
  • QT 为开发者提供了一些可复用的对话框类型,这些可复用对话框全部继承自 QDialog类 QT中标准对话框遵循相同的使用方式: /*定义对话框对象 DialogType 对话框类型 this ,指定当前对话框的父窗口 */ DialogType dlg...
  • qt自定义文件对话框Generally, there are two kinds of Open/Save dialog boxes in Windows. One kind looks like Windows Explorer, with the tree on the left containing Favorites, Libraries, Computer, etc. ...
  • import PyQt4.QtCore,PyQt4.QtGui# 获取文件路径对话框file_name = QFileDialog.getOpenFileName(self,"open file dialog","C:\Users\Administrator\Desktop","Txt files(*.txt)")##"open file Dialog "为文件对话框...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,694
精华内容 3,077
热门标签
关键字:

qt选择文件路径对话框