关于Qt的QFileDialog的使用问题

原创 2015年11月21日 14:07:34

使用Qt编写界面的时候,必然会使用QFileDialog来读取各种各样的文件。

所以QFileDialog的使用方法就必须了解。


一、获取某一个文件的路径 

	QString QFileDialog::getOpenFileName(QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0);
	参数一:父窗口指针
	参数二:窗口名字
	参数三:默认路径
	参数四:筛选标签名
	参数五:筛选标签
	参数六:~~我也不知道,默认即可。
示例如下:
	QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),"/home",tr("Images (*.png *.xpm *.jpg)"));


二、获取某一个文件夹的路径
	QString QFileDialog::getExistingDirectory(QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), Options options = ShowDirsOnly)
	参数说明参考上一个,类似。
示例如下:
	QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"),
                                                "/home",
                                                QFileDialog::ShowDirsOnly
                                                | QFileDialog::DontResolveSymlinks);

三、窗口中文名称
	上述两个函数中,设置窗口中文为中文很容易出现乱码。参考http://bbs.csdn.net/topics/390400726。
	解放方案如下:
		用记事本打开你的源代码,然后点另存为,utf-8,编码覆盖,这时中文就没问题了但是会乱码。
在字符串前加个宏QStringLiteral把字符串扩起来;这样字符串就不会乱码了。

四、从路径字符串中获取父路径和文件名
		参考http://blog.csdn.net/evense/article/details/7996002。
		示例代码如下:
			QString file_full, file_name, file_path;
			QFileInfo fi;
			file_full = QFileDialog::getOpenFileName(this);
			fi = QFileInfo(file_full);
			file_name = fi.fileName();
			file_path = fi.absolutePath();

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

QT 总结(四) 1.中文编码 乱码 2.QFileDialog 打开文件框 3.调用其它UI文件 4.QMessageBox弹窗

1.中文编码 乱码    头文件#include #include "mainwindow.h" #include #include //添加头文件 int main(int argc...

QString转换为const char*(QFileDialog得到的QString文件路径(含中文)转换为fstream可用的const char*文件路径)以及解决Qt中文字符串乱码的一种思路

对于不含中文的文件路径,可用如下代码解决: QString path=QFileDialog::getOpenFileName(this,QObject::tr("set filepath")); ...

QT重写filedialog文件对话框

1.文档目的 数码相框程序在经过qt-embedded交叉编译之后,移植到开发板上发现当打开open键选择新图片文件夹路径时出现段错误。经过查找资料后分析得出,qt类QFileDialog在非X-s...

关于QT的QFileDialog的使用

转载自http://hi.baidu.com/9605201/blog/item/01274a6384783449ebf8f804.html QFileDialog是Qt中用于文...

Qt学习 重写closeEvent退出对话框

Qt学习 重写closeEvent退出对话框

Qt5.5 QFileDialog类的使用方法

头文件:#include Pro文件:Qt += widgets使用QFileDialog有两种方法,一种是比较简单的使用“静态函数法”,另一种是可以自定义各个细节的“构造函数法”。第一种:静态函数...

Qt中获取文件夹路径的方法-QFileDialog::getExistingDirectory的使用

转载自:http://blog.csdn.net/chentianveiko/article/details/52453403很多应用中,我们都会涉及到设置文件的存储路径以及读取路径,即获取一个文件夹...

Qt浅谈之三:内置标准对话框

一、简介        二、效果图 (1)时钟运行,秒针随系统时间移动。如图1。 三、...

Qt中获取文件夹路径的方法-QFileDialog::getExistingDirectory的使用

很多应用中,我们都会涉及到设置文件的存储路径以及读取路径,即获取一个文件夹路径(如:"C:/Users/Administrator/Desktop")来向里面写入文件或者从里面读取文件,下面是一个例子...

Qt之QSizePolicy

简述QSizePolicy类是一个描述布局水平和垂直方向调整策略的属性。一个部件的大小策略是以不同方式改变其大小的意愿表达式,并会影响部件如何被布局引擎所处理。加入布局以后,每个部件会返回一个QSiz...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)