AttributeError:“ QDialog”对象没有属性“ QFileDialog”

时间:2019-12-09 09:07:26

标签: python pyqt5

我又来了,我已经在清晨运行了该脚本,并且可以正常工作。重新启动笔记本电脑后,我开始出现以下错误

AttributeError:“ QDialog”对象没有属性“ QFileDialog”。

任何建议。

谢谢

def pushButton_handler(self):
        print("Button pressed")
        #self.open_dialog_box()


    def pushButton_handler(self):
        #fileName = Dialog.QFileDialog.getOpenFileName(self, "Open File", "", "CSV Files (*.csv)");
        fnames = Dialog.QFileDialog.getOpenFileNames(self, "Open Data File", "", "CSV data files (*.csv)")

        self.pathLE.setText(fileName)
        df = pd.read_csv(fileName)
        print(df)




---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-1-fa4549e61e23> in pushButton_handler(self)
    288     def pushButton_handler(self):
    289         #fileName = Dialog.QFileDialog.getOpenFileName(self, "Open File", "", "CSV Files (*.csv)");
--> 290         fnames = Dialog.QFileDialog.getOpenFileNames(self, "Open Data File", "", "CSV data files (*.csv)")
    291 
    292         self.pathLE.setText(fileName)

AttributeError: 'QDialog' object has no attribute 'QFileDialog'

1 个答案:

答案 0 :(得分:1)

查找QFileDialog.getOpenFileName的工作示例,以防可能对您有所帮助。

from PyQt5.QtWidgets import (QMainWindow, QTextEdit,
                             QAction, QFileDialog, QApplication)
from PyQt5.QtGui import QIcon
import sys


class Example(QMainWindow):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        self.textEdit = QTextEdit()
        self.setCentralWidget(self.textEdit)
        self.statusBar()

        openFile = QAction(QIcon('open.png'), 'Open', self)
        openFile.setShortcut('Ctrl+O')
        openFile.setStatusTip('Open new File')
        openFile.triggered.connect(self.showDialog)

        menubar = self.menuBar()
        fileMenu = menubar.addMenu('&File')
        fileMenu.addAction(openFile)

        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle('File dialog')
        self.show()

    def showDialog(self):
        fname = QFileDialog.getOpenFileName(self, 'Open file', '/home')

        if fname[0]:
            f = open(fname[0], 'r')

            with f:
                data = f.read()
                self.textEdit.setText(data)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())