我想用pyqt5创建一个浏览按钮,但我不明白
from PyQt5 import QtWidgets,QtCore, QtGui
import test3
class MyWindow(QtWidgets.QMainWindow):
def __init__(self, parent=None):
QtWidgets.QMainWindow.__init__(self, parent)
self.ui = test3.Ui_MainWindow()
self.ui.setupUi(self)
self.ui.pushButton_2.clicked.connect(self.getfiles)
def getfiles(self):
fileName = QtGui.QFileDialog.getOpenFileName(self,'Single File','C:\'','*.xlsm')
self.ui.lineEdit.setText(fileName)
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
答案 0 :(得分:3)
在您的代码中有2个错误:
QFileDialog
属于QtWidgets
第二个是getOpenFileName
函数返回一个元组:(filename, filter)
,第一个元素是文件名,第二个元素是过滤器。
您必须更改哪些功能:
fileName = QtGui.QFileDialog.getOpenFileName(self,'Single File','C:\'','*.xlsm')
为:
fileName, _ = QtWidgets.QFileDialog.getOpenFileName(self, 'Single File', QtCore.QDir.rootPath() , '*.xlsm')
答案 1 :(得分:0)
这对我有用。
fileName,_ = QtWidgets.QFileDialog.getOpenFileName(None,'Single File','','* .xlsm')