mrg*_*g95 0 c++ directory qt appdata qfiledialog
在我的程序中,我有一个按钮,打开一个getOpenFileName对话框,如下所示:
path = QFileDialog::getOpenFileName(this, tr("Select region"), "%APPDATA%", tr("region file"));
Run Code Online (Sandbox Code Playgroud)
我希望对话框默认为用户AppData文件夹.所有用户都在运行Windows(XP或更高版本).我如何确保默认为AppData?
谢谢.:)
您可以使用QDesktopServices静态方法(Qt4):
QString path = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
Run Code Online (Sandbox Code Playgroud)
在Qt5中:
QString path = QStandardPaths::standardLocations(QStandardPaths::DataLocation).at(0);
Run Code Online (Sandbox Code Playgroud)
要获取漫游文件夹:
QSettings settings(QSettings::IniFormat, QSettings::UserScope, "AppName", "application");
QString location = QFileInfo(settings.fileName()).absolutePath() + "/";
Run Code Online (Sandbox Code Playgroud)
在我的情况下,路径是:
C:/Users/maxim.makhun/AppData/Roaming/AppName/