美文网首页
2019-02-15 界面代码和功能程序分离

2019-02-15 界面代码和功能程序分离

作者: gongdiwudu | 来源:发表于2019-02-26 11:14 被阅读0次

    界面程序文件:mainUi.py代码如下

    from PyQt5 import QtCore, QtGui, QtWidgets

    class Ui_MainWindow(object):

        def setupUi(self, MainWindow):

            MainWindow.setObjectName("MainWindow")

            MainWindow.resize(498, 430)

            self.centralwidget = QtWidgets.QWidget(MainWindow)

            self.centralwidget.setObjectName("centralwidget")

            self.verticalLayoutWidget = QtWidgets.QWidget(self.centralwidget)

            self.verticalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 501, 431))

            self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")

            self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)

            self.verticalLayout.setContentsMargins(0, 0, 0, 0)

            self.verticalLayout.setObjectName("verticalLayout")

            self.txt_view = QtWidgets.QTextEdit(self.verticalLayoutWidget)

            font = QtGui.QFont()

            font.setFamily("方正姚体")

            font.setPointSize(20)

            self.txt_view.setFont(font)

            self.txt_view.setObjectName("txt_view")

            self.verticalLayout.addWidget(self.txt_view)

            self.horizontalLayout_2 = QtWidgets.QHBoxLayout()

            self.horizontalLayout_2.setObjectName("horizontalLayout_2")

            self.btn_open = QtWidgets.QPushButton(self.verticalLayoutWidget)

            self.btn_open.setObjectName("btn_open")

            self.horizontalLayout_2.addWidget(self.btn_open)

            self.btn_save = QtWidgets.QPushButton(self.verticalLayoutWidget)

            self.btn_save.setObjectName("btn_save")

            self.horizontalLayout_2.addWidget(self.btn_save)

            self.verticalLayout.addLayout(self.horizontalLayout_2)

            MainWindow.setCentralWidget(self.centralwidget)

            self.retranslateUi(MainWindow)

            QtCore.QMetaObject.connectSlotsByName(MainWindow)

        def retranslateUi(self, MainWindow):

            _translate = QtCore.QCoreApplication.translate

            MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))

            self.btn_open.setText(_translate("MainWindow", "打开文件"))

            self.btn_save.setText(_translate("MainWindow", "保存文件"))

    主程序的代码文件:main.py

    import sys

    from PyQt5.QtWidgets import QApplication,QMainWindow,QFileDialog

    import mainUi

    class MainCode(QMainWindow,mainUi.Ui_MainWindow):

        def __init__(self):

                QMainWindow.__init__(self)

                mainUi.Ui_MainWindow.__init__(self)

                self.setupUi(self)

                self.btn_save.clicked.connect(self.on_save)

                self.btn_open.clicked.connect(self.on_open)

        def on_save(self):

                FullFileName,_=QFileDialog.getSaveFileName (self, '文件另存为', r'./','TXT (*.txt)')

                set_text=self.txt_view.toPlainText()

                with open(FullFileName,'wt') as f:

                print(set_text, file = f)

        def on_open(self):

                txtstr=""

                FullFileName, _ = QFileDialog.getOpenFileName(self, '打开', r'./', 'TXT (*.txt)')

                with open(FullFileName, 'rt') as f:

                        lines=f.readlines()

                        for line in lines:

                                txtstr=txtstr+line

                                self.txt_view.setText(txtstr)

    if __name__=='__main__':

            app=QApplication(sys.argv)

            md=MainCode()

            md.show()

            sys.exit(app.exec_())

    相关文章

      网友评论

          本文标题:2019-02-15 界面代码和功能程序分离

          本文链接:https://www.haomeiwen.com/subject/ymeveqtx.html