pyqt5文档管理系统
时间: 2023-07-09 20:49:49 浏览: 52
PyQt5是一个强大的GUI框架,可以用于创建各种类型的GUI应用程序,包括文档管理系统。下面是一个简单的PyQt5文档管理系统的示例:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QAction, QFileDialog, QTextEdit
class DocManager(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建菜单栏和工具栏
newAction = QAction('New', self)
newAction.setShortcut('Ctrl+N')
newAction.triggered.connect(self.newDoc)
openAction = QAction('Open', self)
openAction.setShortcut('Ctrl+O')
openAction.triggered.connect(self.openDoc)
saveAction = QAction('Save', self)
saveAction.setShortcut('Ctrl+S')
saveAction.triggered.connect(self.saveDoc)
exitAction = QAction('Exit', self)
exitAction.setShortcut('Ctrl+Q')
exitAction.triggered.connect(self.close)
menubar = self.menuBar()
fileMenu = menubar.addMenu('File')
fileMenu.addAction(newAction)
fileMenu.addAction(openAction)
fileMenu.addAction(saveAction)
fileMenu.addAction(exitAction)
toolbar = self.addToolBar('ToolBar')
toolbar.addAction(newAction)
toolbar.addAction(openAction)
toolbar.addAction(saveAction)
toolbar.addAction(exitAction)
# 创建文本编辑器
self.textEdit = QTextEdit(self)
self.setCentralWidget(self.textEdit)
# 设置主窗口
self.setGeometry(300, 300, 800, 600)
self.setWindowTitle('PyQt5 Document Manager')
def newDoc(self):
self.textEdit.clear()
def openDoc(self):
fileName, _ = QFileDialog.getOpenFileName(self, "Open document", "", "Text documents (*.txt);All Files (*)")
if fileName:
with open(fileName, 'r') as file:
self.textEdit.setText(file.read())
def saveDoc(self):
fileName, _ = QFileDialog.getSaveFileName(self, "Save document", "", "Text documents (*.txt);All Files (*)")
if fileName:
with open(fileName, 'w') as file:
file.write(self.textEdit.toPlainText())
if __name__ == '__main__':
app = QApplication(sys.argv)
dm = DocManager()
dm.show()
sys.exit(app.exec_())
```
这个文档管理系统提供了基本的文档操作功能,包括新建、打开、保存和退出。它使用QTextEdit组件作为文本编辑器,并且通过菜单栏和工具栏提供了操作入口。您可以根据需要扩展这个示例以实现更丰富的文档管理功能。