我需要使用QFileDialog接受模式将后缀添加到QFileDialog::AcceptSave中的所选文件名中。例如,在QFileDialog中选择“1.txt”文件后,应选择“1_suffix.txt”。应该在文件接受之前添加它,因为我需要用户能够在应用文件之前更改文件名。

码:

m_dialog.setAcceptMode(QFileDialog::AcceptSave);
m_dialog.setWindowModality(Qt::WindowModal);
m_dialog.setFileMode(QFileDialog::AnyFile);
m_dialog.setDefaultSuffix("_suffix");
if(m_dialog.exec() == QFileDialog::Accept)
{
    setPath(m_dialog.selectedFiles()[0]);
}

最佳答案

通常,QFileDialog显示平台文件对话框。要获得所需的行为,您需要使用特定于平台的机制。 Qt没有实现这种功能。

如果使用的是非本机文件对话框,则可以检查其结构以找到所需的小部件,过滤它们上的相关事件,并注入(inject)所需的行为。

关于c++ - QFileDialog:选择文件后添加后缀,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38637711/

10-11 17:52