添加保存与重新加载

This commit is contained in:
moyanj 2024-09-09 10:50:37 +08:00
parent 0fbac536dd
commit a94c87ba3b

View File

@ -1,14 +1,42 @@
from PyQt5.QtWidgets import QWidget, QHBoxLayout from PyQt5.QtWidgets import QWidget, QVBoxLayout, QHBoxLayout
from PyQt5.QtCore import Qt
from qfluentwidgets import FluentIcon as FIF from qfluentwidgets import FluentIcon as FIF
from qfluentwidgets import CommandBar, Action
from .json_edit import CodeEditor from .json_edit import CodeEditor
import json import json
class SettingWidget(QWidget): class SettingWidget(QWidget):
def __init__(self, title="设置"): def __init__(self, title="设置"):
super().__init__() super().__init__()
self.base = QHBoxLayout(self) self.base = QVBoxLayout(self)
json.load(open("config.json"))
c1 = CodeEditor(open("config.json").read()) # 创建水平布局来放置工具栏
self.base.addWidget(c1) bar_layout = QHBoxLayout()
bar = CommandBar()
bar.addAction(Action(FIF.SAVE, "保存", triggered=self.save))
bar.addAction(Action(FIF.SYNC, "重新加载", triggered=self.reload))
bar_layout.addWidget(bar, alignment=Qt.AlignmentFlag.AlignRight) # 设置工具栏右对齐
# 将水平布局添加到垂直布局中
self.base.addLayout(bar_layout)
# 加载 JSON 配置
with open("config.json", "r") as config_file:
config_data = config_file.read()
self.c1 = CodeEditor(config_data)
# 将代码编辑器添加到垂直布局中
self.base.addWidget(self.c1)
self.setLayout(self.base) # 设置布局 self.setLayout(self.base) # 设置布局
def save(self):
# 保存配置到 JSON 文件
with open("config.json", "w") as config_file:
config_file.write(self.c1.toPlainText())
def reload(self):
# 重新加载 JSON 配置
with open("config.json", "r") as config_file:
config_data = config_file.read()
self.c1.setPlainText(config_data)