Qt QFileDialog - 只有静态函数的原生对话框?

dar*_*ron 7 qt qt4 qfiledialog

我只是想保存一个文件.但是,我需要输入一个没有后缀的文件名来自动获取默认后缀(setDefaultSuffix()会这样做).

我不想完全失去本机保存对话框.exec()没有从QDialog重载,所以它完全绕过本机钩子(忽略DontUseNativeDialog选项,即使它是假的).

如果我在函数返回后禁用文件覆盖警告并自己附加默认后缀,那么如果用户不想覆盖那么我将重新打开对话框......这只是丑陋的.

是否有一些我可以捕获的信号并快速注入默认后缀,如果它不存在?我猜不是,因为它是一个原生的对话.

有没有我在过滤器上做错了什么?我只有一个过滤器选择.它应该使用该扩展名.

这看起来很蹩脚.启动保存对话框并简单地键入"test"不应该导致无扩展名文件."测试.",是的."测试"没办法.当用户点击Load并且无法看到他们刚刚保存的文件时,这会让用户感到困惑.

我想Qt的跨平台部分给了我最小的公分母文件对话框功能?

Mat*_*ias 5

是的,如果查看Qt源代码,很明显只有静态函数使用本机文件对话框.不幸的是,不可能以任何其他方式获得原生对话框......