界面程序文件: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_())