Skip to content
This repository was archived by the owner on Jun 28, 2025. It is now read-only.

Commit f12298d

Browse files
committed
优化标题栏控件大小和位置
1 parent d025d66 commit f12298d

5 files changed

Lines changed: 26 additions & 23 deletions

File tree

Plain_Craft_Launcher_2/Controls/RoundShadow.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ class RoundShadow(QWidget):
1010

1111
def __init__(self):
1212
super().__init__()
13-
self.border_width = setup.corner_radius # 从设置中获取圆角值
13+
self.border_width = setup.CORNER_RADIUS # 从设置中获取圆角值
1414
# 设置 窗口无边框和背景透明 *必须
1515
self.setAttribute(Qt.WA_TranslucentBackground)
1616
# 修改窗口标志,添加系统菜单和最小化按钮标志

Plain_Craft_Launcher_2/FormMain.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
from FormMain_ui import Ui_FormMain
1414
from Controls.RoundShadow import RoundShadow
15+
from Modules.Base.ModSetup import mod_setup
1516

1617

1718
class FormMain(RoundShadow):
@@ -32,7 +33,7 @@ def __init__(self):
3233

3334
# 窗口加载第一步:基础
3435
# 设置窗口大小
35-
self.resize(850, 500)
36+
self.resize(*mod_setup.SIZE)
3637
self.logger.write("窗口加载第一步完成", LT.INFO)
3738

3839
# 窗口加载第二步:加载 UI 控件
@@ -94,9 +95,9 @@ def resizeEvent(self, a0: QResizeEvent):
9495
self.container.setGeometry(9, 9, self.width() - 18, self.height() - 18)
9596

9697
# 更新面板大小
97-
self.ui.PanTitle.setGeometry(0, 0, self.container.width(), 40)
98+
self.ui.PanTitle.setGeometry(0, 0, self.container.width(), mod_setup.TITLE_BAR_H)
9899
self.ui.PanMain.setGeometry(
99-
0, 40, self.container.width(), self.container.height() - 40
100+
0, mod_setup.TITLE_BAR_H, self.container.width(), self.container.height() - mod_setup.TITLE_BAR_H
100101
)
101102

102103
def close_window(self):

Plain_Craft_Launcher_2/FormMain_ui.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ class Ui_FormMain(object):
1616

1717
def setupUi(self, FormMain: QtWidgets.QWidget):
1818
# 获取所有需要的设置项
19-
size = setup.size
19+
size = setup.SIZE
2020

21-
corner_radius = setup.corner_radius
21+
corner_radius = setup.CORNER_RADIUS
2222
bg_color = setup.color_brush_5
2323
fg_color = setup.color_brush_2
2424

@@ -34,8 +34,8 @@ def setupUi(self, FormMain: QtWidgets.QWidget):
3434

3535
# 标题栏 Panel
3636
self.PanTitle = QtWidgets.QFrame(FormMain)
37-
self.PanTitle.setGeometry(QtCore.QRect(0, 0, size[0], 48))
38-
self.PanTitle.setBaseSize(QtCore.QSize(size[0], 48))
37+
self.PanTitle.setGeometry(QtCore.QRect(0, 0, size[0], setup.TITLE_BAR_H))
38+
self.PanTitle.setBaseSize(QtCore.QSize(size[0], setup.TITLE_BAR_H))
3939
self.PanTitle.setStyleSheet(
4040
f"""
4141
QFrame#PanTitle {{
@@ -52,7 +52,7 @@ def setupUi(self, FormMain: QtWidgets.QWidget):
5252

5353
# 主 Panel
5454
self.PanMain = QtWidgets.QFrame(FormMain)
55-
self.PanMain.setGeometry(QtCore.QRect(0, 48, size[0], (size[1] - 48)))
55+
self.PanMain.setGeometry(QtCore.QRect(0, setup.TITLE_BAR_H, size[0], (size[1] - 48)))
5656
self.PanMain.setStyleSheet(
5757
f"""
5858
QFrame#PanMain {{
@@ -75,20 +75,20 @@ def setupUi(self, FormMain: QtWidgets.QWidget):
7575
tooltip="Exit",
7676
padding=(7, 7, -10, -10),
7777
)
78-
self.BtnExit.setGeometry(QtCore.QRect((size[0] - 50), 12, 13, 13))
78+
self.BtnExit.setGeometry(QtCore.QRect((size[0] - 50), 15, 14, 14))
7979
self.BtnExit.setObjectName("BtnExit")
8080

8181
# 标题栏按钮 -- 最小化
8282
self.BtnMin = QtWidgets.QPushButton(self.PanTitle)
83-
self.BtnMin.setGeometry(QtCore.QRect((size[0] - 100), 0, 40, 40))
83+
self.BtnMin.setGeometry(QtCore.QRect((size[0] - 98), 2, 40, 40))
8484
self.BtnMin.setStyleSheet("background-color: transparent;")
8585
self.BtnMin.setText("—")
8686
self.BtnMin.setObjectName("BtnMin")
8787

8888
# 标题栏标签 -- 标题
8989
self.SVGTitle = QSvgWidget(self.PanTitle)
9090
self.SVGTitle.load("Images/svgtitle.svg")
91-
self.SVGTitle.setGeometry(QtCore.QRect(0, 4, 120, 40))
91+
self.SVGTitle.setGeometry(QtCore.QRect(2, 14, 76, 24))
9292
self.SVGTitle.setStyleSheet("background-color: transparent;")
9393
self.SVGTitle.setObjectName("SVGTitle")
9494

Plain_Craft_Launcher_2/Modules/Base/ModSetup.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@
66

77
class ModSetup:
88
"""写入/读取设置相关的类"""
9+
# 常量(不随主题变化)
10+
CORNER_RADIUS = 8
11+
SIZE: tuple[int, int] = (850, 500)
12+
TITLE_BAR_H: int = 48
913

1014
def __init__(self):
1115
self.logger = ModLogging(module_name="ModSetup")
@@ -14,18 +18,16 @@ def __init__(self):
1418

1519
def setup_settings(self):
1620
"""初始化设置项"""
17-
self.ColorBrush1 = "#343d4a"
21+
self.color_brush_1 = "#343d4a"
1822
self.color_brush_2 = "#0F6FCD"
19-
self.ColorBrush3 = "#1370f3"
20-
self.ColorBrush4 = "#4890f5"
23+
self.color_brush_3 = "#1370f3"
24+
self.color_brush_4 = "#4890f5"
2125
self.color_brush_5 = "#96c0f9"
22-
self.ColorBrush6 = "#d5e6fd"
23-
self.ColorBrush7 = "#e0eafd"
24-
self.ColorBrush8 = "#eaf2fe"
25-
self.ColorBrushBg0 = "#96c0f9"
26-
self.ColorBrushBg1 = "#bee0eafd"
27-
self.corner_radius = 8
28-
self.size = (850, 500)
26+
self.color_brush_6 = "#d5e6fd"
27+
self.color_brush_7 = "#e0eafd"
28+
self.color_brush_8 = "#eaf2fe"
29+
self.color_brush_bg_0 = "#96c0f9"
30+
self.color_brush_bg_1 = "#bee0eafd"
2931

3032
self.logger.write("设置初始化完成", LT.INFO)
3133

@@ -51,4 +53,4 @@ def save_settings(self, file_path: str = "./data/Config.json"):
5153
self.logger.write("设置文件保存成功", LT.INFO)
5254

5355

54-
mod_setup = ModSetup()
56+
mod_setup = ModSetup()

0 commit comments

Comments
 (0)