0

在我的程序中,我有一个按钮可以打开一个 getOpenFileName 对话框,如下所示:

path = QFileDialog::getOpenFileName(this, tr("Select region"), "%APPDATA%", tr("region file"));

我希望对话框默认为用户 AppData 文件夹。所有用户都运行 Windows(XP 或更高版本)。我如何确保它默认为 AppData?

4

1 回答 1

5

您可以使用 QDesktopServices 静态方法(Qt4):

QString path = QDesktopServices::storageLocation(QDesktopServices::DataLocation);

在 Qt5 中:

QString path = QStandardPaths::standardLocations(QStandardPaths::DataLocation).at(0);

获取漫游文件夹:

QSettings settings(QSettings::IniFormat, QSettings::UserScope, "AppName", "application");
QString location = QFileInfo(settings.fileName()).absolutePath() + "/";

在我的情况下,路径是:

C:/Users/maxim.makhun/AppData/Roaming/AppName/

于 2014-01-13T10:02:01.377 回答