import sys from PyQt5.QtWidgets import QApplication,QWidget,QVBoxLayout,QFileDialog,QPushButton,QTextEdit,QLabel from PyQt5.QtGui import QPixmap class fileDialogDemo(QWidget): def __init__(self): super(fileDialogDemo, self).__init__() self.button1 = QPushButton() self.label = QLabel() self.button2 = QPushButton() self.textEdit = QTextEdit() self.button1.setText("open a picture") self.button1.clicked.connect(self.openPicture) self.button2.setText("open file") self.button2.clicked.connect(self.openFile) #布局 vBoxlayout = QVBoxLayout() vBoxlayout.addWidget(self.button1) vBoxlayout.addWidget(self.label) vBoxlayout.addWidget(self.button2) vBoxlayout.addWidget(self.textEdit) self.setLayout(vBoxlayout) def openPicture(self): pictureDialog,str = QFileDialog.getOpenFileName(self,"open file",'',"image files(*.jpg *.gif *.png *.jpeg)") #print(pictureDialog) self.label.setPixmap(QPixmap(pictureDialog)) def openFile(self): #路径和过滤可以省掉 fileDialog,str = QFileDialog.getOpenFileName(self,"open file",'') print(fileDialog) fp = open(fileDialog,'r',encoding='utf-8') #文件有中文,必须指定解码 print(fp) data = fp.read() self.textEdit.setText(data) if __name__ == '__main__': app = QApplication(sys.argv) fileDialog = fileDialogDemo() fileDialog.show() sys.exit(app.exec_()) 参数:PyQt5基本控件详解之QFileDialog(十六)_jia666666的博客-CSDN博客_pyqt5 qfiledialog
PyQt5之QFileDialog(十六)
最新推荐文章于 2024-03-29 16:18:40 发布