2017-08-02 80 views
1
class Ui_MainWindow(object): 
    def setupUi(self, MainWindow): 
     MainWindow.setObjectName("MainWindow") 
     MainWindow.resize(1093, 670) 
     self.centralwidget = QtWidgets.QWidget(MainWindow) 
     self.centralwidget.setObjectName("centralwidget") 
     self.pushButton = QtWidgets.QPushButton(self.centralwidget) 
     self.pushButton.setGeometry(QtCore.QRect(120, 320, 93, 28)) 
     self.pushButton.setObjectName("pushButton") 
     MainWindow.setCentralWidget(self.centralwidget) 
     ... 

     self.retranslateUi(MainWindow) 
     self.pushButton.clicked.connect(self.pushButtonClicked) 
     QtCore.QMetaObject.connectSlotsByName(MainWindow) 

    def retranslateUi(self, MainWindow): 
     _translate = QtCore.QCoreApplication.translate 
     MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) 
     self.pushButton.setText(_translate("MainWindow", "PushButton")) 




    def pushButtonClicked(self): 
     print("hi") 
     dialog = QFileDialog 
     dialog.show() 
     ##dialog.getOpenFileName(None,tr("Open Image"), "/home", tr("Image Files (*.png *.jpg *.bmp)")) 


if __name__ == "__main__": 

    app = QtWidgets.QApplication(sys.argv) 
    MainWindow = QtWidgets.QMainWindow() 
    ui = Ui_MainWindow() 
    ui.setupUi(MainWindow) 
    MainWindow.show() 
    sys.exit(app.exec_()) 

我从PYQT5 Designer创建了这段代码,我想打开QFileDialog来选择文件。 但是,当我点击哪个connet pushButtonClicked按钮,程序停止并崩溃。 请帮我当我在pyqt中调用Qfiledialog时,程序停止。

+0

请从后崩溃的完整的堆栈跟踪。 – BoarGules

+0

期望行'dialog = QFileDialog'做什么? – ekhumoro

+0

将'dialog = QFileDialog'改为'dialog = QFileDialog(self)' – eyllanesc

回答

0

你也可以这样来做:

def pushButtonClicked(self): 
    self.op_dir = QFileDialog.getOpenFileName(None,tr("Open Image"), "/home", tr("Image Files (*.png *.jpg *.bmp)")) 

和可变self.op_dir将包含您所选择的路径

相关问题