📅  最后修改于: 2023-12-03 15:36:33.313000             🧑  作者: Mango
PyQt5 是一个 Python 语言的界面库,它是 PyQt4 的增强版本。PyQt5 可以与 Python 2 和 Python 3 一起使用,并且支持 Mac、Windows 和 Linux 等操作系统。本文将介绍如何使用 PyQt5 创建一个简单的记事本应用程序。
可以使用 pip 命令来安装 PyQt5:
pip install PyQt5
以下是创建记事本的示例代码:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit, QAction, QFileDialog
class Notepad(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.textEdit = QTextEdit()
self.setCentralWidget(self.textEdit)
self.statusBar()
openFile = QAction('Open', self)
openFile.setShortcut('Ctrl+O')
openFile.setStatusTip('Open new File')
openFile.triggered.connect(self.showDialog)
saveFile = QAction('Save', self)
saveFile.setShortcut('Ctrl+S')
saveFile.setStatusTip('Save the file')
saveFile.triggered.connect(self.saveToFile)
menubar = self.menuBar()
fileMenu = menubar.addMenu('&File')
fileMenu.addAction(openFile)
fileMenu.addAction(saveFile)
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('Notepad')
self.show()
def showDialog(self):
fname = QFileDialog.getOpenFileName(self, 'Open file', '/home')
if fname[0]:
with open(fname[0], 'r') as f:
self.textEdit.setText(f.read())
def saveToFile(self):
fname = QFileDialog.getSaveFileName(self, 'Save file', '/home')
if fname[0]:
with open(fname[0], 'w') as f:
f.write(self.textEdit.toPlainText())
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Notepad()
sys.exit(app.exec_())
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit, QAction, QFileDialog
class Notepad(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.textEdit = QTextEdit()
self.setCentralWidget(self.textEdit)
self.statusBar()
openFile = QAction('Open', self)
openFile.setShortcut('Ctrl+O')
openFile.setStatusTip('Open new File')
openFile.triggered.connect(self.showDialog)
saveFile = QAction('Save', self)
saveFile.setShortcut('Ctrl+S')
saveFile.setStatusTip('Save the file')
saveFile.triggered.connect(self.saveToFile)
menubar = self.menuBar()
fileMenu = menubar.addMenu('&File')
fileMenu.addAction(openFile)
fileMenu.addAction(saveFile)
def showDialog(self):
fname = QFileDialog.getOpenFileName(self, 'Open file', '/home')
if fname[0]:
with open(fname[0], 'r') as f:
self.textEdit.setText(f.read())
def saveToFile(self):
fname = QFileDialog.getSaveFileName(self, 'Save file', '/home')
if fname[0]:
with open(fname[0], 'w') as f:
f.write(self.textEdit.toPlainText())
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Notepad()
sys.exit(app.exec_())
运行程序后,在菜单栏中选择 File -> Open 可以打开一个文本文件;选择 File -> Save 可以保存当前内容到一个文本文件。
本文介绍了如何使用 PyQt5 创建一个简单的记事本应用程序。PyQt5 是一个强大的 Python 界面库,可以创建各种类型的图形用户界面。