Qt另存为文件对话框在Mac 10.9中将文件名显示为无标题

时间:2015-01-29 08:33:25

标签: c++ macos qt qfiledialog

在我的应用程序中,我想将“另存为”对话框作为工作表对话框,因此我创建了QFileDialog的实例,而不是使用静态方法getSaveFileName

当我创建QFileDialog的实例时,我正确地传递了所有必需的参数,但是当对话框仅在第一次显示正确的文件名时显示时,Qt之后只显示“无标题”作为文件name.Even虽然我提供了正确的文件名。

我正在使用Qt 5.3。操作系统:Mac:10.9。

有人遇到过这个问题吗?

我已经看到了这里提到的类似问题:https://bugreports.qt.io/browse/QTBUG-36212,但是这里再次使用了静态方法。

我通过在Qt Creator中创建了一个项目(5.3.1 Clang 5.0(Apple),64位)进行了一些测试,这个项目只有QPushButton点击后显示另存为对话框。

第一次输出正确:

enter image description here

第二次,文件名始终显示为“无标题”:

enter image description here

我的代码非常简单:

#include “mainwindow.h”
#include “ui_mainwindow.h”
#include <QFileDialog>
#include <QPushButton>
#include <QLayout>

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{ 
   QPushButton *pButton = new QPushButton( “Save As..”, this ); 
   connect( pButton,SIGNAL),this,SLOT)); setCentralWidget( pButton );
}

MainWindow::~MainWindow()
{
}

void MainWindow::OnClicked()
{ 
   QFileDialog *pFile = new QFileDialog ( this, “TestApplication”, “BoomBoom”, “.jpg” ); 
   pFile->setAcceptMode( QFileDialog::AcceptSave ); 
   pFile->setWindowModality( Qt::WindowModal ); int statusCode = pFile->exec();
}

0 个答案:

没有答案