标签: qfiledialog

PyQt4文件选择小部件

我想制作一个QT4(使用QT设计器)对话框,其中包含一个必须选择文件的部分.

现在,我知道QFileDialog存在,我可以编写符合我想要的东西.但是我也可以在QT设计师中做到这一点吗?

有没有办法在QT设计器中获得"文件选择"小部件?或者,我记得这些按钮,将所选文件作为标题和一个小箭头,允许用户通过QFileDialog选择另一个文件?

那么有一个现成的解决方案,还是我必须自己编程?

python filedialog qt4 pyqt4 qfiledialog

19
推荐指数
3
解决办法
5万
查看次数

Qt:在表单上添加文件选择字段(QLineEdit和"浏览"按钮)

我需要QLineEdit在表单上显示"浏览"按钮.当用户单击按钮时,QFileDialog应该打开,依此类推.

这很常见,但我找不到现成的解决方案.我期望在Qt Designer中有一些小部件QFileSelect,或类似的东西,但没有发现类似的东西.

我应该手工实施吗?或者,这样做的正确方法是什么?

c++ qt qtgui qt-designer qfiledialog

19
推荐指数
1
解决办法
9844
查看次数

QFileDialog中的多个文件和文件夹选择?

我正在使用pyQt4,并希望在我的GUI中有一个"浏览"按钮,打开一个对话框,允许用户选择多个文件文件夹.我已经研究了很多但是没有找到任何方法可以做到这一点.

QFileDialog.getOpenFileNames()只允许我选择文件,QFileDialog.getExistingDirectory()只允许选择目录.

有什么方法可以以某种方式结合他们的功能.理想情况下,我想使用nativeDialogs但似乎不可能.因此,我愿意在外观上妥协.有什么方法可以实现上述说法吗?

这里也提出了同样的问题,但答案是在c ++中.我需要一个python实现. 允许用户在QFileDialog中选择文件或文件夹

python qt pyqt pyqt4 qfiledialog

13
推荐指数
1
解决办法
7753
查看次数

QFileDialog:如何在"另存为..."对话框中设置默认文件名

我尝试在Mac OS X中创建"另存为..."对话框.但我不想使用QFileDialog::getSaveFileName()函数,因为此函数创建的对话框在Mac OS X Lion中并非真正原生.所以我决定创建对话框作为QFileDialog对象:

auto export_dialog( new QFileDialog( main_window ) );
export_dialog->setWindowModality( Qt::WindowModal );
export_dialog->setFileMode( QFileDialog::AnyFile );
export_dialog->setAcceptMode( QFileDialog::AcceptSave );
Run Code Online (Sandbox Code Playgroud)

一切正常,除了一个问题.我无法为保存的文件设置默认名称,因此用户每次都必须手动输入此名称.我知道该函数QFileDialog::getSaveFileName()允许通过第三个参数dir(http://qt-project.org/doc/qt-4.8/qfiledialog.html#getSaveFileName)设置默认文件名.但是如何在没有此功能的情况下设置此默认名称?

我可以通过QFileDialog::setDefaultSuffix()函数为保存的文件设置默认后缀,但我需要设置整个默认名称,而不仅是默认后缀.

我试图使用QFileDialog::setDirectory()函数,但它只设置保存目录,没有保存文件的名称.

我在Mac OS X Lion上使用Qt 4.8.1.

在此先感谢您的帮助.

macos qt4 qfiledialog

13
推荐指数
2
解决办法
1万
查看次数

QFileDialog:保存文件时自动添加扩展名?

当使用a QFileDialog保存文件并指定扩展名(如*.pdf)并且用户键入没有此扩展名的名称时,保存的文件也没有此扩展名.
例如,代码:

QFileDialog fileDialog(this, "Choose file to save");
fileDialog.setNameFilter("PDF-Files (*.pdf)");
fileDialog.exec();
QFile pdfFile(fileDialog.selectedFiles().first());
Run Code Online (Sandbox Code Playgroud)

现在当用户输入"foo"作为名称时,文件将保存为"foo",而不是"foo.pdf".所以QFileDialog不会自动添加扩展名.我的问题:我怎么能改变这个?

c++ qt qt4 save qfiledialog

11
推荐指数
1
解决办法
1万
查看次数

如何使用QFileDialog选项并检索saveFileName?

我正在尝试使用QFileDialog来提示用户提供文件名和位置以保存文本文件.我玩了QtGui.QFileDialog.getSaveFileName,但我有兴趣使用一些选项,比如设置默认后缀,并启用保存文件对话框的详细信息视图,根据我的说法,这不是可以这样做,仅使用getSaveFileName.每当我设置它们时,getSaveFileName对话框就会忽略它们.

所以,我最终得到了这样的东西:

dlg=QtGui.QFileDialog( self )
dlg.setWindowTitle( 'Print Things' )
dlg.setViewMode( QtGui.QFileDialog.Detail )
dlg.setNameFilters( [self.tr('Text Files (*.txt)'), self.tr('All Files (*)')] )
dlg.setDefaultSuffix( '.txt' )
if dlg.exec_() :
    print dlg
Run Code Online (Sandbox Code Playgroud)

但是,现在我不确定如何获取用户传递的文件的名称?如果我打印dlg.getSaveFileName,它只会弹出另一个保存文件对话框.任何人都知道如何做到这一点,同时仍然将所有选项传递给我想要尊重的QFileDialog?

python pyqt exec pyqt4 qfiledialog

10
推荐指数
2
解决办法
4万
查看次数

QTQuick(QML)中的FileDialog:以给定名称保存文件

我们正在构建一个Qt Quick应用程序,它必须能够以给定名称保存文件.

FileDialog组件中,您只能设置目录.这不是非常用户友好,因为您不希望每次下载文件时手动输入文件名.

到目前为止我们尝试过不同的东

  1. 来自QtQuick.Dialogs的FileDialog:无法设置filename

  2. 通过QPlatformFileDialogHelper进行原生对话(淘气私有c ++ hack):无法在Linux(Gnome)上设置文件名

  3. 通过静态QFileDialog :: getSaveFileName()的原生对话框:在快速应用程序中,'父'没有可用的QWidget

  4. QFileDialog实例的QT对话:由于未设置'parent',因此模态doeas不起作用.在快速应用程序中,没有可用于setParent()调用的QWidget

(使用带有QT 5.1和QtQuick 2.1的C++,包括所有桌面组件)

qt qfiledialog qml qt-quick qtquick2

9
推荐指数
1
解决办法
9120
查看次数

有没有办法在Linux上使用QFileDialog自动添加扩展名到文件

我希望用户能够输入将保存为xml文件的文件的名称.目前在Windows和Mac上,如果输入"test"作为文件名,它将自动添加".xml",这就是我想要的.不幸的是,在测试Linux版本时,我发现输入没有扩展名的文件名将保存为普通文件.用户必须在文件字符串中指定扩展名(即"test.xml"),以便以正确的格式保存.

我正在使用的代码如下.这是一个Qt错误还是有一种方法在Qt中指定它应该添加一个扩展,如果没有找到?

// Get value for "dir". If the setting doesn't exist then use
// the the path in "defaultsave.directory"
QString prevPath = prevValues.value("dir", QString::fromStdString(
  ConfigService::Instance().getString("defaultsave.directory"))).toString();

QString filter;
filter.append("Files (*.xml)");
filter += ";;AllFiles (*.*)";
QString groupingFile = QFileDialog::getSaveFileName(this, "Save Grouping file as", prevPath, filter);
Run Code Online (Sandbox Code Playgroud)

c++ qt qfiledialog

8
推荐指数
1
解决办法
5644
查看次数

Qt Android:如何显示原生文件对话框?

我不确定它是否可行,但是目前,当我显示一个打开的文件对话框时:

QString file = QFileDialog::getOpenFileName(this);
Run Code Online (Sandbox Code Playgroud)

显示的对话框不是Android的原生对话框.

相反,它看起来像这样(它也没有最大化):

在此输入图像描述

我正在使用Qt 5.2.0 for Android.

c++ qt android qfiledialog qt5

8
推荐指数
1
解决办法
3920
查看次数

PyQt - 如何使getOpenFileName记住最后的开放路径?

根据getOpenFileName说明:

QString fileName = QFileDialog.getOpenFileName(this, tr("Open File"), 
                                          "/home",
                                          tr("Images (*.png *.xpm *.jpg)"));
Run Code Online (Sandbox Code Playgroud)

当我关闭它时,如何让对话框记住最后一次的路径?

什么是tr意味着tr("Open File")什么?

谢谢

python pyqt qfiledialog

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

qfiledialog ×10

qt ×6

c++ ×4

python ×4

pyqt ×3

pyqt4 ×3

qt4 ×3

android ×1

exec ×1

filedialog ×1

macos ×1

qml ×1

qt-designer ×1

qt-quick ×1

qt5 ×1

qtgui ×1

qtquick2 ×1

save ×1