Почему не задаётся начальная папка для сохранения файла в QFileDialog?

QFileDialog dialog;
dialog.setFileMode(QFileDialog::AnyFile);
dialog.setAcceptMode(QFileDialog::AcceptSave);
dialog.setDirectory(QStandardPaths::writableLocation(QStandardPaths::DownloadLocation));

// Выбор файла из папки проекта
QString projectFilePath = QCoreApplication::applicationDirPath() + "/task_files";

QDir dir(projectFilePath);
QStringList files = dir.entryList(QDir::Files);

foreach(QString file, files) QString savePath = dialog.getSaveFileName(nullptr, "Сохранить файл", file, "Все файлы (*)");

Окно сохранения файла всегда открывается на папке, в которой содержится файл для сохранения. Попробовал ставить различные папки с помощью setDirectory, но ни одна не сработала. Вручную в окне сохранения получается выбрать любую папку и сохранить в неё файл (процесс сохранения в коде не написан), а значит проблем с правами нету. Может кто-нибудь объяснить, в чём проблема?
  • Вопрос задан
  • 38 просмотров
Решения вопроса 1
Потому что не надо вызывать статическую функцию getSaveFileName, а использовать dialog.exec() и dialog. selectedFiles()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы