Win32函数GetSaveFileName中使用的OPENFILENAME结构的lpstrDefExt成员是否等效?
这是来自MSDN的描述:
因此,如果lpstrDefExt设置为“txt”,并且用户键入“myfile”而不是“myfile.txt”,则该函数仍会返回“myfile.txt”。
最佳答案
编辑:如果这对您不起作用,请@ user52366查看the answer below
如果指定,Qt将从“selectedFilter”参数中提取默认扩展名。
这是一个例子:
QString filter = "Worksheet Files (*.abd)";
QString filePath = QFileDialog::getSaveFileName(GetQtMainFrame(), tr("Save Worksheet"), defaultDir, filter, &filter);
使用此代码时,如果用户未在对话框中指定扩展名,则getSaveFileName()方法将自动添加“.abd”文件扩展名。您可以在Qt源文件“qfiledialog_win.cpp”内的qt_win_get_save_file_name()中看到此实现。不幸的是,这不适用于getOpenFileName()方法。
关于c++ - 在QFileDialog::getSaveFileName中指定默认扩展名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7234381/