QFileDialog:保存文件时自动添加扩展名?
当使用QFileDialog
保存文件并指定扩展名(如*.pdf)并且用户输入不带此扩展名的名称时,保存的文件也没有此扩展名。
示例代码:
QFileDialog fileDialog(this, "Choose file to save");
fileDialog.setNameFilter("PDF-Files (*.pdf)");
fileDialog.exec();
QFile pdfFile(fileDialog.selectedFiles().first());
现在,当用户输入“foo”作为名称时,文件将保存为“foo”,而不是“foo.pdf”。因此QFileDialog
不会自动添加扩展名。我的问题:我该如何改变这个?
When using a QFileDialog
to save a file and to specify the extension (like *.pdf) and the user types in a name without this extension, also the saved file hasn't this extension.
Example-Code:
QFileDialog fileDialog(this, "Choose file to save");
fileDialog.setNameFilter("PDF-Files (*.pdf)");
fileDialog.exec();
QFile pdfFile(fileDialog.selectedFiles().first());
now when the user enters "foo" as the name, the file will be saved as "foo", not as "foo.pdf". So the QFileDialog
doesn't add the extension automatically. My question: How can I change this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 QFileDialog::setDefaultSuffix():
You could use QFileDialog::setDefaultSuffix():
对于多个文件过滤器,可以执行以下操作。
For multiple file filters, the following can be done.