我有一些带有一些过滤器的 getSaveFileName,我希望在用户打开“保存”对话框时选择其中一个。Qt 文档说明如下:
可以通过将 selectedFilter 设置为所需的值来选择默认过滤器。
我尝试以下变体:
QString selFilter="All files (*.*)";
QFileDialog::getSaveFileName(this,"Save file",QDir::currentPath(),
"Text files (*.txt);;All files (*.*)",&selFilter);
但是当对话框出现时,“文本文件”过滤器(通常是列表中的第一个过滤器)被选中。我还尝试了以下所有方法:
selFilter="All files";
selFilter="All files (*.*)\n";
selFilter="All files (*.*);;";
selFilter="All files (*.*)\0";
以及这种变体的不同混合物。我的代码中过滤器列表的格式是根据文档完成的(来自 Qt 文档的示例行):
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
请注意,selFilter 变量的输出正常工作:用户按 OK 后,selFilter 变量包含用户选择的过滤器。
平台:Linux(OpenSUSE 12.1)、Qt 4.7.4、gcc 4.6.2。
那么如何设置默认过滤器呢?!