gpt4 book ai didi

c++ - QFileDialog 预选目录

转载 作者:行者123 更新时间:2023-11-30 05:24:58 28 4
gpt4 key购买 nike

我有一个 QFileDialog 对象,我需要用户在其中选择一个目录

QFileDialog dlg(this, tr("Select directory"));
dlg.setDirectory(currentDir);
dlg.setFileMode(QFileDialog::Directory);
dlg.setOptions(QFileDialog::ShowDirsOnly | QFileDialog::ReadOnly);

例如我的文件夹结构是

<root>
<dir1>
<dir2>

currentDir<root>/dir1我希望对话框指向 <root>目录并选择 dir1在对话框中(不仅以文本形式,而且还像您单击它时一样)

这可能吗,如何实现?

/编辑:我试过了

dlg.setDirectory("<root>");
dlg.selectFile("dir1");

这导致对话框设置正确的目录并填写 filename行编辑但不在文件列表中选择它(但是当有很多相似的目录名称时这是非常需要的)。

干杯

最佳答案

selectFile()应该做的伎俩:

QFileDialog dlg(this, tr("Select directory"));

if(currentDir == "<root>/dir1") {
dlg.selectFile(currentDir);
}
else {
dlg.setDirectory(currentDir);
}

dlg.setFileMode(QFileDialog::Directory);
dlg.setOptions(QFileDialog::ShowDirsOnly | QFileDialog::ReadOnly);

关于c++ - QFileDialog 预选目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38521705/

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