From ae540efb8b78810e164e30c1f4592030b502e912 Mon Sep 17 00:00:00 2001 From: RoyirinRosmontis Date: Sun, 23 Aug 2026 13:23:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=20-=20=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E5=BC=B9=E7=AA=97=E7=BB=86=E8=8A=82=E8=B0=83=E6=95=B4?= =?UTF-8?q?=EF=BC=9A=E9=94=99=E8=AF=AF=E6=8F=90=E7=A4=BA=E8=A1=8C=E5=B9=B3?= =?UTF-8?q?=E6=97=B6=E9=9A=90=E8=97=8F=EF=BC=88=E6=B6=88=E9=99=A4=E5=AF=86?= =?UTF-8?q?=E7=A0=81=E6=A1=86=E4=B8=8B=E6=96=B9=E5=A4=A7=E6=AE=B5=E7=A9=BA?= =?UTF-8?q?=E7=99=BD=EF=BC=89=E3=80=81logo=20=E5=8A=A0=E5=A4=A7=E5=88=B0?= =?UTF-8?q?=2064x64=E3=80=81=E7=AA=97=E5=8F=A3=E5=8A=A0=E5=AE=BD=E5=88=B0?= =?UTF-8?q?=20380=E3=80=81=E5=8F=96=E6=B6=88/=E7=99=BB=E5=BD=95=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E7=BC=A9=E5=B0=8F=20-=20=E5=90=AF=E5=8A=A8=E6=97=B6?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E6=9C=AA=E9=85=8D=E7=BD=AE=EF=BC=9A=E9=9A=90?= =?UTF-8?q?=E8=97=8F=E4=B8=BB=E7=AA=97=E5=8F=A3=E5=8F=AA=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E6=A1=86=EF=BC=8C=E7=99=BB=E5=BD=95=E6=88=90?= =?UTF-8?q?=E5=8A=9F=E6=81=A2=E5=A4=8D=E4=B8=BB=E7=AA=97=E5=8F=A3=EF=BC=8C?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E5=88=99=E7=9B=B4=E6=8E=A5=E9=80=80=E5=87=BA?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lite/proxy_lite.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/lite/proxy_lite.py b/lite/proxy_lite.py index 6e30ca4..3cb3737 100644 --- a/lite/proxy_lite.py +++ b/lite/proxy_lite.py @@ -1123,7 +1123,7 @@ class LoginDialog(QDialog): super().__init__(parent) self.setWindowTitle("节点配置登录") self.setWindowIcon(load_icon()) - self.setFixedSize(340, 190) + self.setFixedSize(380, 200) self.setStyleSheet(f""" QDialog {{ background-color: {C_BG}; }} QLabel {{ color: {C_TEXT}; font-family: "Microsoft YaHei", "Segoe UI", sans-serif; font-size: 12px; }} @@ -1137,15 +1137,15 @@ class LoginDialog(QDialog): }} QPushButton#btnOk {{ background-color: {C_GREEN}; color: #fff; border: none; - border-radius: 6px; padding: 7px 18px; - font-size: 13px; font-weight: bold; + border-radius: 6px; padding: 4px 12px; + font-size: 12px; font-weight: bold; }} QPushButton#btnOk:hover {{ background-color: #5ed978; }} QPushButton#btnOk:disabled {{ background-color: #2a3a2e; color: #666; }} QPushButton#btnCancel {{ background-color: {C_CARD}; color: {C_SUBTEXT}; border: 1px solid {C_BORDER}; border-radius: 6px; - padding: 7px 18px; font-size: 13px; + padding: 4px 12px; font-size: 12px; }} """) @@ -1155,8 +1155,8 @@ class LoginDialog(QDialog): # 左侧 logo logo = QLabel() - logo.setPixmap(load_icon().pixmap(48, 48)) - logo.setFixedSize(48, 48) + logo.setPixmap(load_icon().pixmap(64, 64)) + logo.setFixedSize(64, 64) logo.setAlignment(Qt.AlignCenter) root.addWidget(logo, 0, Qt.AlignVCenter) @@ -1175,6 +1175,8 @@ class LoginDialog(QDialog): self.lb_err = QLabel("") self.lb_err.setStyleSheet(f"color: {C_RED}; font-size: 11px;") + self.lb_err.setFixedHeight(14) + self.lb_err.hide() # 无错误时不占空间,避免密码框下方留大片空白 form.addWidget(self.lb_err) bottom = QHBoxLayout() @@ -1201,10 +1203,12 @@ class LoginDialog(QDialog): password = self.ed_pass.text() if not user or not password: self.lb_err.setText("请输入用户名和密码") + self.lb_err.show() return self.btn_ok.setEnabled(False) self.btn_cancel.setEnabled(False) self.lb_err.setText("正在登录...") + self.lb_err.show() threading.Thread(target=self._worker, args=(user, password), daemon=True).start() def _worker(self, user, password): @@ -1236,6 +1240,7 @@ class LoginDialog(QDialog): self.accept() else: self.lb_err.setText(info) + self.lb_err.show() # ── 状态指示灯(小圆点) ─────────────────────────────── @@ -1596,9 +1601,14 @@ class MainWindow(QWidget): # ── 节点登录 ── def _maybe_show_login(self): - """启动时节点未配置则弹出登录框。""" + """启动时节点未配置:隐藏主窗口只显示登录框;登录成功恢复,取消则退出。""" if _endpoint_domain() == "???": + self.hide() self._show_login_dialog() + if _endpoint_domain() == "???": + self.quit_app() # 未登录且无可用节点,直接退出 + return + self.show() def _show_login_dialog(self): """弹出登录框;成功后重载节点并刷新标题。"""