2017-07-07 50 views
-1

我想创建一个pyqt5浏览按钮,但我不明白这一点创建浏览按钮与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

什么** **做你? –

+0

试试我的解决方案:P – eyllanesc

回答

2

在代码中有2个错误:

  1. QFileDialog属于QtWidgets

  2. 第二个是getOpenFileName函数返回一个元组:(filename, filter),第一个元素是文件名,第二个是过滤器。

对于其功能,必须更改:

fileName = QtGui.QFileDialog.getOpenFileName(self,'Single File','C:\'','*.xlsm') 

到:

fileName, _ = QtWidgets.QFileDialog.getOpenFileName(self, 'Single File', QtCore.QDir.rootPath() , '*.xlsm') 
+0

非常感谢你的工作非常好 –

+0

不要忘记标记我的答案是正确的请。 – eyllanesc