添加保存与重新加载
This commit is contained in:
parent
0fbac536dd
commit
a94c87ba3b
|
@ -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)
|
Loading…
Reference in New Issue
Block a user