QFileDialog :: getOpenFileName不适用于MAC 10.10.5 Yosemite

时间:2016-03-15 11:40:49

标签: c++ macos qt

我使用QFileDialog :: getOpenFileName打开文件对话框,它给出了所选文件的路径。

奇怪的行为

这正在进行

  • MAC debug build
  • Win debug build
  • Win release build

不工作

  • Mac Release build:返回空字符串作为文件名

我的代码是

QString qResult = QFileDialog::getOpenFileName(parent, qCaption, qDefaultPath, qFilter, &qSelectedFilter);

我检查了

  1. parent:有效指针
  2. pCation:正确显示有效字符串和标题
  3. qDefaultPath:有效路径并存在于计算机上,使用QDir(qDefaultPath).exists()
  4. 进行检查
  5. qFilter正常工作
  6. qSelectedFilter:好像
  7. 任何人都可以给我一些想法吗?为什么会这样?还是其他选择? 请帮忙解决这个问题

    Qt版本是4.8.5

1 个答案:

答案 0 :(得分:2)

更新您的Qt版本是否可能成为解决方案? 4.8分支的最新版本是4.8.7。该版本的release note表示:

  

更好地支持在Mac OS X 10.10 Yosemite上运行Qt 4.8应用程序

和4.8.6的release note

  

更好地支持Mac OS X 10.9 Mavericks

因此很有可能使用最新版本解决您的问题。