Qt基本对话框之标准文件对话框

本章通过实例介绍标准文件对话框基本使用


前言

本章先介绍一下标准文件对话框的使用。


一、标准文件对话框

标准文件对话框可以用于获取某一个路径下文件名或者路径;用于保存某一种类型的文件。

1. 一些静态方法:

//获取用户选择的文件名
static QString getOpenFileName(
	QWidget *parent = nullptr,          //标准文件对话框的父窗口
    const QString &caption = QString(), //标题名
    const QString &dir = QString(),		//默认路径,可以带文件名
    const QString &filter = QString(),  //文件类型过滤,每种过滤用“;;”分隔
    QString *selectedFilter = nullptr,  //返回的是过滤器
    Options options = Options()         //选择显示文件名的格式,默认同时显示文件名和目录
    );
//获取用户保存的文件名
//该方法参数与上类似
static QString getSaveFileName(
    QWidget *parent = nullptr,
	const QString &caption = QString(),
	const QString &dir = QString(),
	const QString &filter = QString(),
	QString *selectedFilter = nullptr,
	Options options = Options());
//获取用户选择的目录
//参数与上类似,默认返回的是一个目录路径
static QString getExistingDirectory(
    QWidget *parent = nullptr,
	const QString &caption = QString(),
	const QString &dir = QString(),
	Options options = ShowDirsOnly);
//获取用户所选的文件列表
static QStringList getOpenFileNames(
	QWidget *parent = nullptr,
	const QString &caption = QString(),
	const QString &dir = QString(),
	const QString &filter = QString(),
	QString *selectedFilter = nullptr,
	Options options = Options());

2. 示例代码:

写一个按钮的点击信号连接槽函数:

2.1 选择一个文件

void Dialog::slotShowFilename()
{
    QString name =  QFileDialog::getOpenFileName(this,"选择文件","/home","c file(*.c);;head file(*.h);;cpp file(*.cpp)");
    m_lineEditFile->setText(name);
}

2.2 保存一个文件

void Dialog::slotShowFilename()
{
    QString name =  QFileDialog::getSaveFileName(this,"要保存的文件","F:/KuGou","file(*.*)");
    QFile file(name);
    if(!file.open(QIODevice::WriteOnly))
    {

    }
}

3. 效果图:

3.1

运行效果图
如图所示,右下角筛选下拉框有三个选项,分别是c文件,头文件和cpp文件,选择好类型可以选择相应类型文件。

3.2

运行效果图
如图所示,需要输入一个文件名用于给保存的文件命名,同时选择想要的类型。
注意:保存文件需要使用QFile打开才能成功创建。


总结

记录学习过程,大家互相学习。

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

眸中yue

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值