我有一个名为PDFviewer的python类,在运行该程序时,系统将显示一个窗口,该窗口处理button(打开文件夹),它将打开一个文件对话框,允许用户选择一个目录并显示其中的文件。在
问题是,当我尝试单击按钮时,系统崩溃并显示以下错误:
File "C:\Users\test\Documents\Python_Projects\final_project\myPDFviewer.py", line 36, in sys.exit(app.exec_()) File "C:\Users\test\Documents\Python_Projects\final_project\myPDFviewer.py", line 24, in setExistingDirectory options=options)
builtins.TypeError: getExistingDirectory(parent: QWidget = None, caption: str = '', directory: str = '', options: Union[QFileDialog.Options, QFileDialog.Option] = QFileDialog.ShowDirsOnly): argument 1 has unexpected type 'bool'
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import (QApplication, QCheckBox, QColorDialog, QDialog,
QErrorMessage, QFileDialog, QFontDialog, QFrame, QGridLayout,
QInputDialog, QLabel, QLineEdit, QMessageBox, QPushButton)
from PyQt5.QtCore import QDir, Qt
import pdfviewer
class pdfViewer(pdfviewer.Ui_PdfPreviewWindow):
def __init__(self,PdfPreviewObj ):
self.PdfPreviewObj =PdfPreviewObj
self.setupUi(PdfPreviewObj)
self.PdfPreviewObj.show()
self.pushButtonOpenFolder.clicked.connect(self.setExistingDirectory)
def setExistingDirectory(self,qf):
options = QFileDialog.DontResolveSymlinks | QFileDialog.ShowDirsOnly
directory = QFileDialog.getExistingDirectory(self,
"Open Folder",
options=options)
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
PdfPreviewWindow = QtWidgets.QMainWindow()
pdfViewerUi = pdfViewer(PdfPreviewWindow)
sys.exit(app.exec_())
我找到了以前不起作用的解决方案,因为我没有将对象对话框引用到self,所以解决方案变成:
相关问题 更多 >
编程相关推荐