From d049d9d9084ca360a76c7aeaec6c8d9cb53adda9 Mon Sep 17 00:00:00 2001 From: zzh <838331105@qq.com> Date: Wed, 24 Sep 2025 13:43:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=82=B9=E5=87=BB=E6=B8=85?= =?UTF-8?q?=E9=99=A4=E5=88=97=E8=A1=A8=E7=A8=8B=E5=BA=8Fcore=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mainwindow.cpp | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 9ca05b5..9c14552 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -28,7 +28,7 @@ MainWindow::MainWindow(QWidget *parent) settings = new QSettings("TuxiApp", "LightStripSN", this); // 初始化更新相关变量 - currentVersion = "1.4.0"; // 当前程序版本 + currentVersion = "1.5.1"; // 当前程序版本 updateServerUrl = settings->value("updateServerUrl", "http://180.163.74.83:8001/version").toString(); updateNetworkManager = new QNetworkAccessManager(this); updateCheckReply = nullptr; @@ -111,7 +111,7 @@ void MainWindow::showVersionUpdateInfo() */ void MainWindow::setupUI() { - setWindowTitle("兔喜Test1.5 Author:Zhangzhenghao Email:zzh9953477@gmail.com"); + setWindowTitle("兔喜Test1.5.1 Author:Zhangzhenghao Email:zzh9953477@gmail.com"); // 参考qt_bak的合理尺寸设置,增加竖向高度 setMinimumSize(850, 720); // 增加最小高度 @@ -308,6 +308,9 @@ void MainWindow::setupUI() { snLayout->setSpacing(8); // 减少组件间距 snLayout->setContentsMargins(10, 20, 10, 10); // 减少内边距 + // 初始化snHorizontalLayout + snHorizontalLayout = new QHBoxLayout(); + // 统计信息和搜索按钮布局 QHBoxLayout *snHeaderLayout = new QHBoxLayout(); snHeaderLayout->setSpacing(8); @@ -368,6 +371,9 @@ void MainWindow::setupUI() { snHeaderLayout->addWidget(clearSnBtn); snLayout->addLayout(snHeaderLayout); + + // 添加snHorizontalLayout到snLayout中 + snLayout->addLayout(snHorizontalLayout); // 打开管理器按钮 openManagerBtn = new QPushButton("打开灯条SN管理器"); @@ -1116,11 +1122,16 @@ void MainWindow::loadSnList() { void MainWindow::onClearSnListClicked() { - // 清空所有灯条widget - QLayoutItem *item; - while ((item = snHorizontalLayout->takeAt(0)) != nullptr) { - delete item->widget(); - delete item; + // 检查snHorizontalLayout是否存在,避免段错误 + if (snHorizontalLayout) { + // 清空所有灯条widget + QLayoutItem *item; + while ((item = snHorizontalLayout->takeAt(0)) != nullptr) { + if (item->widget()) { + delete item->widget(); + } + delete item; + } } // 清空复选框列表和SN集合 @@ -1128,7 +1139,9 @@ void MainWindow::onClearSnListClicked() uniqueSnSet.clear(); // 更新计数显示 - snCountLabel->setText("已发现灯条: 0 个"); + if (snCountLabel) { + snCountLabel->setText("已发现灯条: 0 个"); + } // 不再调用saveSnList(),让LightStripManager管理数据 // saveSnList(); // 删除这行