From 735a8e9a51e56df913ea9b2452d3d4e1ee1d7740 Mon Sep 17 00:00:00 2001 From: Jeffrey Hsu Date: Tue, 27 May 2025 02:40:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9E=84=E5=BB=BA=E6=97=B6?= =?UTF-8?q?=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 ++- build.bat | 1 + main.spec | 2 +- ui/pyui/about_ui.py | 10 +++++++++- utils/hook.py | 10 ++++++++++ 5 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 utils/hook.py diff --git a/.gitignore b/.gitignore index 4f710f6..8878fdb 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,5 @@ dist .idea __pycache__ *.pyc -files \ No newline at end of file +files +build_info.py \ No newline at end of file diff --git a/build.bat b/build.bat index 6578b9d..dccf93e 100644 --- a/build.bat +++ b/build.bat @@ -26,6 +26,7 @@ if errorlevel 1 ( ) echo === 使用 pyinstaller 构建 === +python .\utils\hook.py pyinstaller .\main.spec if errorlevel 1 ( echo [错误] 构建失败! diff --git a/main.spec b/main.spec index e6b7019..ea1c4e0 100644 --- a/main.spec +++ b/main.spec @@ -20,7 +20,7 @@ splash = Splash( 'images\\splash.png', binaries=a.binaries, datas=a.datas, - text_pos=(35,378), + text_pos=(35, 378), text_size=12, text_color='black', minify_script=True, diff --git a/ui/pyui/about_ui.py b/ui/pyui/about_ui.py index 364aa5e..b08a3e7 100644 --- a/ui/pyui/about_ui.py +++ b/ui/pyui/about_ui.py @@ -1,8 +1,10 @@ from PySide6.QtGui import QDesktopServices, Qt from PySide6.QtWidgets import QVBoxLayout, QHBoxLayout +from pyparsing import version_info from qfluentwidgets import PrimaryPushSettingCard, FluentIcon, GroupHeaderCardWidget, PushButton, ImageLabel, TitleLabel from ui.components.widget import Widget +from utils.function import is_frozen class AboutWidget(Widget): @@ -17,11 +19,17 @@ class AboutWidget(Widget): self.hBox.addWidget(self.logoImage, 0, Qt.AlignLeft) self.hBox.addWidget(self.appNameLabel, 1, Qt.AlignLeft) + build_time_str = '' + if is_frozen(): + from build_info import BUILD_TIME + build_time_str = f",构建时间:{BUILD_TIME}" + self.version_card = PrimaryPushSettingCard( text="获取源码", icon=FluentIcon.INFO, title="关于", - content="作者:许方杰。当前版本:1.0.0\n本软件使用 GPLv3 开源协议进行分发,作者不对使用本软件造成的任何损失负责。" + content=f"作者:许方杰。当前版本:1.0.0{build_time_str}\n" + f"本软件使用 GPLv3 开源协议进行分发,作者不对使用本软件造成的任何损失负责。" ) self.button_list = [ PushButton("访问网站"), diff --git a/utils/hook.py b/utils/hook.py new file mode 100644 index 0000000..35fba99 --- /dev/null +++ b/utils/hook.py @@ -0,0 +1,10 @@ +from datetime import datetime + + +def gen_build_time(): + with open('build_info.py', 'w', encoding='utf-8') as f: + f.write(f"# Auto-generated build info\n") + f.write(f"BUILD_TIME = '{datetime.now().isoformat(sep=' ', timespec='seconds')}'\n") + + +gen_build_time()