From c3f58249686c0c77b14a78322251acc4cbf10a74 Mon Sep 17 00:00:00 2001 From: duanshengchao <519970194@qq.com> Date: Fri, 28 Mar 2025 17:17:44 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4tab=E5=A4=A7=E5=B0=8F?= =?UTF-8?q?=E9=9A=8F=E5=86=85=E5=AE=B9=E8=87=AA=E5=8A=A8=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E5=A4=A7=E5=B0=8F=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dataPanel/dpConfigurationDialog.cpp | 18 ++++++++++++++++-- dataPanel/dpGlobals.h | 8 ++++++++ include/customMenu.h | 2 +- source/customTab.cpp | 9 ++++++--- 4 files changed, 31 insertions(+), 6 deletions(-) diff --git a/dataPanel/dpConfigurationDialog.cpp b/dataPanel/dpConfigurationDialog.cpp index d0618df..e3e4192 100644 --- a/dataPanel/dpConfigurationDialog.cpp +++ b/dataPanel/dpConfigurationDialog.cpp @@ -68,14 +68,26 @@ void dpConfigurationDialog::initialize() //typeSourceList m_pModel_typeSource = new QStandardItemModel(this); ui->typeSourceList->setModel(m_pModel_typeSource); - QStringList typeSourceTextList; + /*QStringList typeSourceTextList; typeSourceTextList << QString::fromStdWString(L"电压") << QString::fromStdWString(L"电流") << QString::fromStdWString(L"功率"); for(QString& text: typeSourceTextList) { QStandardItem* item = new QStandardItem(text); item->setEditable(false); //不可编辑 m_pModel_typeSource->appendRow(item); - } + }*/ + QStandardItem* item = new QStandardItem(QString::fromStdWString(L"电压")); + item->setData(RealTimeDataType::voltage, Qt::UserRole + itemRole_dataType); + item->setEditable(false); //不可编辑 + m_pModel_typeSource->appendRow(item); + item = new QStandardItem(QString::fromStdWString(L"电流")); + item->setData(RealTimeDataType::current, Qt::UserRole + itemRole_dataType); + item->setEditable(false); //不可编辑 + m_pModel_typeSource->appendRow(item); + item = new QStandardItem(QString::fromStdWString(L"功率")); + item->setData(RealTimeDataType::power, Qt::UserRole + itemRole_dataType); + item->setEditable(false); //不可编辑 + m_pModel_typeSource->appendRow(item); //typeSelectedList ui->typeSelectedList->setSelectionBehavior(QAbstractItemView::SelectRows); m_pModel_typeSelected = new QStandardItemModel(this); @@ -141,6 +153,7 @@ void dpConfigurationDialog::createDataSourceList() currentItem->setData(0, Qt::UserRole + itemRole_stationID); currentItem->setData(0, Qt::UserRole + itemRole_componentID); currentItem->setData(0, Qt::UserRole + itemRole_pointID); + currentItem->setData(RealTimeDataType::current, Qt::UserRole + itemRole_dataType); componentItem->appendRow(currentItem); QStandardItem* voltageItem = new QStandardItem("电压"); voltageItem->setEditable(false); @@ -148,6 +161,7 @@ void dpConfigurationDialog::createDataSourceList() voltageItem->setData(0, Qt::UserRole + itemRole_stationID); voltageItem->setData(0, Qt::UserRole + itemRole_componentID); voltageItem->setData(1, Qt::UserRole + itemRole_pointID); + voltageItem->setData(RealTimeDataType::voltage, Qt::UserRole + itemRole_dataType); componentItem->appendRow(voltageItem); ui->dataSourceList->expandAll(); } diff --git a/dataPanel/dpGlobals.h b/dataPanel/dpGlobals.h index 6eae477..2383d68 100644 --- a/dataPanel/dpGlobals.h +++ b/dataPanel/dpGlobals.h @@ -14,6 +14,13 @@ enum DataPanelType map //地图 }; +enum RealTimeDataType +{ + power = 0, //功率 + voltage, //电压 + current //电流 +}; + #include struct configurationResults { @@ -37,5 +44,6 @@ struct configurationResults #define itemRole_stationID 2 #define itemRole_componentID 3 #define itemRole_pointID 4 +#define itemRole_dataType 5 #endif diff --git a/include/customMenu.h b/include/customMenu.h index 61a5bfd..44ba245 100644 --- a/include/customMenu.h +++ b/include/customMenu.h @@ -8,7 +8,7 @@ class CustomMenu : public QMenu Q_OBJECT public: - CustomMenu(QWidget *parent = nullptr); + CustomMenu(QWidget *parent = nullptr); virtual ~CustomMenu(); bool mouseIsInside() {return m_bMouseInside;} diff --git a/source/customTab.cpp b/source/customTab.cpp index 87d0f43..13a0323 100644 --- a/source/customTab.cpp +++ b/source/customTab.cpp @@ -150,9 +150,12 @@ void CustomTab::setText(const QString& strTitle) m_pTitle->setText(strTitle); QFontMetrics metrics(m_pTitle->font()); - QRect rect = metrics.boundingRect(m_pTitle->text()); - m_pTitle->setMinimumSize(rect.width() + 12, 0); - m_pTitle->setMaximumSize(rect.width() + 12, 1660); + // QRect rect = metrics.boundingRect(m_pTitle->text()); + // m_pTitle->setMinimumSize(rect.width() + 12, 0); + // m_pTitle->setMaximumSize(rect.width() + 12, 1660); + int textWidth = metrics.horizontalAdvance(strTitle); + m_pTitle->setMinimumSize(textWidth + 12, 0); + m_pTitle->setMaximumSize(textWidth + 12, 1660); setObjectName("dashboardTab_" + strTitle); }