我正在使用QFileDialog :: getOpenFileName函数来获取要打开的文件.但是,在运行
Windows 7的客户端计算机上,这将显示损坏的打开文件对话框,如屏幕截图所示,或者崩溃整个应用程序.
@H_502_11@解决方法
- 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.
我猜测目录存在问题.作为路径提供的空字符串可能有问题.
尝试这样修复:
尝试这样修复:
- auto filename = QFileDialog::getSaveFileName(this,tr("Generate Report"),QString(),tr("CSV files (*.csv)"));
- // or this way
- auto filename = QFileDialog::getSaveFileName(this,QDir::home().absolutePath(),tr("CSV files (*.csv)"));