gpt4 book ai didi

c++ - getOpenFileName - 预选上次打开不工作

转载 作者:搜寻专家 更新时间:2023-10-31 02:11:52 26 4
gpt4 key购买 nike

在我的应用程序中,我需要加载许 multimap 像。我真的会使用一个选项来选择最后打开的文件,所以我想知道最后选择的文件。文档说:

QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
"/home",
tr("Images (*.png *.xpm *.jpg)"));

The file dialog's working directory will be set to dir. If dir includes a file name, the file will be selected.

所以我应该将最后打开的文件路径保存在某处,然后插入它而不是“/home”。但这是行不通的。在打开的文件对话框中,文件名被剥离到最后几个字符并且没​​有文件被选中。怎么了?是错误吗?

我当前的代码:

QString fileName = QFileDialog::getOpenFileName(this, "Select file", 
lastUsedFile, "Image Files (*.png *.jpg *.jpg *.bmp);; JPEG(*.jpg *.jpeg);; PNG(*.png);; BMP(*.bmp)");

if (!fileName.isEmpty())
lastUsedFile = fileName;

我想要实现的是选择并滚动到文件。

最佳答案

它是QFileDialog::getOpenFileName()的第三个参数。然后您必须将其存储在 QSettings 中。

例如:

QString fileName = QFileDialog::getOpenFileName(
this, tr("Open file"),
Settings.value(DEFAULT_DIR).toString(),
tr("Images (*.png *.xpm *.jpg)");

if (!fileName.isEmpty()) {
QDir curDir;
Settings.setValue(DEFAULT_DIR, curDir.absoluteFilePath(fileName));
}

关于c++ - getOpenFileName - 预选上次打开不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42898735/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com