我正在使用 QFileDialog::getOpenFileName
函数来打开一个文件。但是,在运行 Windows 7 的客户端计算机上,这要么显示损坏的打开文件对话框(如屏幕截图所示),要么导致整个应用程序崩溃。
我用来打开文件对话框的代码是:
void MainWindow::on_action_triggered() {
auto filename = QFileDialog::getSaveFileName(this, "Generate Report", "", "CSV files (*.csv)");
if (filename.isEmpty()) {
return;
}
// Do operations on filename...
}
我在 Visual Studio 2013 中使用 Qt 5.5。
最佳答案
此特定案例中的问题最终是 Qt 与安装在客户端计算机上的 Dell Backup and Recovery 软件之间的不兼容,其中包括不兼容的 shell 扩展。我使用的解决方案是删除备份和恢复软件,但听起来命名空间 Qt 也是一个替代方案。更多信息请参阅 QTBUG-41416 .
关于c++ - Qt 文件对话框呈现不正确并崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33007602/