首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QFileDialog预选目录

QFileDialog预选目录
EN

Stack Overflow用户
提问于 2016-07-22 16:29:35
回答 1查看 401关注 0票数 1

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

代码语言:javascript
复制
QFileDialog dlg(this, tr("Select directory"));
dlg.setDirectory(currentDir);
dlg.setFileMode(QFileDialog::Directory);
dlg.setOptions(QFileDialog::ShowDirsOnly | QFileDialog::ReadOnly);

例如,我的文件夹结构是

代码语言:javascript
复制
<root>
  <dir1>
  <dir2>

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

这是可能的吗?如何实现?

/edit:我试过了

代码语言:javascript
复制
dlg.setDirectory("<root>");
dlg.selectFile("dir1");

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

干杯

EN

回答 1

Stack Overflow用户

发布于 2016-07-22 17:01:20

selectFile()应该可以做到这一点:

代码语言:javascript
复制
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);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38521705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档