我想制作一个QT4(使用QT设计器)对话框,其中包含必须选择文件的部分。
现在,我知道 QFileDialog 存在,并且我可以编写一些程序来执行我想要的操作。 但我也可以在 QT Designer 中完成吗?
有没有办法在 QT 设计器中获取“文件选择”小部件? 或者,我记得这些按钮,将选定的文件作为标题和一个小箭头,允许用户通过 QFileDialog 选择另一个文件?
那么有现成的解决方案吗,还是我必须自己编程?
假设您有一个名为 PushButton 的简单按钮,并且路径应存储在 lineEdit 中。
from PyQt4.QtGui import QFileDialog
def selectFile():
lineEdit.setText(QFileDialog.getOpenFileName())
pushButton.clicked.connect(selectFile)
[编辑]只是想知道,您是否使用 KDE?如果是这样,您可以使用 KUrlRequester 来实现此目的。它可以轻松配置为支持从文件到 URL 到目录的任何内容。
QFileDialog
存在于
QtGui
中。至少在我的 4.4 版本中是这样,也可能更早。我认为它不在设计器中的原因是因为它打开自己的窗口,而不是作为放置在另一个窗口上的小部件。QTDesigner 的文档可以更好,至少暗示它的存在。
实例化它并运行
show
命令。它会立即出现并默认为
/
。
import QtGui
self.fileDialog = QtGui.QFileDialog(self)
self.fileDialog.show()
QFileDialog 类中使用方法 getOpenFileName()。
QFileDialog.getOpenFileName()将返回文件路径和所选文件类型
我得到了这个:('C:/Users/Sathsara/Desktop/UI/Test/test.py','所有文件(*)')要仅获取文件路径,请使用
QFileDialog.getOpenFileName()[0]
def selectFile():
print(QFileDialog.getOpenFileName()[0])
dlg.locationBtn.clicked.connect(selectFile)