0

我使用类似的东西:

CreateChooseDir() 
{ 

QString OpenedCreatedDirectory = QFileDialog::getExistingDirectory(this, tr("Choose Directory"),
                                                              "/home",
                                                              QFileDialog::DontResolveSymlinks | QFileDialog::DontUseNativeDialog);


    ui.PathLineEdit -> setText(OpenedDirectory);

    ui.PushButtonNext -> setEnable();
}

这里的问题是,如果用于创建或打开目录,我只想设置PushButtonNext启用。QFileDialog目前,PushButtonNext仅在关闭FileDialog. 所以我想尽可能使用发射信号。有什么建议么?

4

1 回答 1

1

QFileDialog继承accepted信号QDialog- 但是,由于您使用的是静态函数QFileDialog::getExistingDirectory,因此您将没有机会连接信号。

相反,只需检查返回的QString: 如果用户单击“取消”,则字符串将为 null(空)。

if(!OpenCreatedDirectory.isEmpty()) ui.PushButtonNext -> setEnable();
于 2012-03-12T18:04:04.383 回答