如何让QFileDialog记住上次打开的路径
时间: 2023-08-18 10:08:47 浏览: 702
可以通过在QFileDialog中设置默认路径来实现让它记住上次打开的路径。具体步骤如下:
1. 在你的Qt应用程序中,创建一个QSettings对象,例如:
```
QSettings settings("MyCompany", "MyApp");
```
2. 在QFileDialog打开之前,使用QSettings对象获取上次打开的路径,例如:
```
QString lastPath = settings.value("LastOpenPath").toString();
```
3. 使用QString的isEmpty()方法检查上次打开的路径是否为空。如果为空,使用QDir的homePath()方法获取用户的主目录作为默认路径。如果不为空,则使用上次打开的路径作为默认路径。例如:
```
QString defaultPath;
if (lastPath.isEmpty()) {
defaultPath = QDir::homePath();
} else {
defaultPath = lastPath;
}
```
4. 使用QFileDialog的setDirectory()方法将默认路径设置为QFileDialog的打开目录。例如:
```
QFileDialog dialog(this);
dialog.setDirectory(defaultPath);
```
5. 在用户选择文件后,使用QSettings对象将选择的路径保存为上次打开的路径,例如:
```
QString selectedPath = dialog.selectedFiles().first();
settings.setValue("LastOpenPath", selectedPath);
```
这样,下次打开QFileDialog时,它就会记住上次打开的路径了。
阅读全文