2013-05-12 71 views
0

我想使用QFileDialog来获取新目录的名称,我将在其中创建几个配置文件。QFileDialog - 创建没有扩展名的文件

如果目录名称不包含扩展名部分,那将会很好。我如何强制用户,不要提供与filename.extension QFileDialog?

我试着用下面的代码:

QString fileName = 
    QFileDialog::getSaveFileName(this, tr("create a directory), 
           QDir::homePath(), tr("Directories (*)")); 

但很明显,它允许用户输入任意文件名带或不带扩展名。任何其他想法?

回答

1

您可以使用QFileDialog::GetExistingDirectory

QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"), QDir::homePath(), 
               QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks); 

QFileDialog Documentation

+0

我试图强调它将是一个“新”目录。用户应提供名称,系统将创建其内容的目录。 – Dejwi 2013-05-12 16:28:43

+0

不要以为这是可能的。用户应该也可以用该对话框创建一个目录。你为什么要强制用户创建一个新目录? – mwerschy 2013-05-12 16:30:45

+0

用户原因应该是透明的。他只是创建一个新文件(以某种应用程序特定的格式)。但事实上,将它存储在一个目录中的多个文件中会更容易。 – Dejwi 2013-05-12 16:36:53