QFileDialog ( файловый каталог ):автоматическое добавление расширения при сохранении файла?
-
21-09-2019 - |
Вопрос
При использовании 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
расширение не добавляется автоматически.Мой вопрос:Как я могу это изменить?
Решение
Вы могли бы использовать QFileDialog::setDefaultSuffix():
Это свойство содержит суффикс, добавленный к имени файла, если никакой другой суффикс не был указан.
Это свойство задает строку, которая будет добавлена к имени файла, если в нем уже нет суффикса.Суффикс обычно используется для обозначения типа файла (например"txt" указывает на текстовый файл).