DiagramDesigner/diagramCavas/source/monitorSideBarDlg.cpp

45 lines
1.2 KiB
C++
Raw Normal View History

2025-11-21 19:22:41 +08:00
#include "monitorSideBarDlg.h"
#include "monitorSelectedItemsDlg.h"
#include "monitorAttributeDlg.h"
#include "monitorPanel.h"
#include <QVBoxLayout>
#include <QSplitter>
MonitorSideBarDlg::MonitorSideBarDlg(QWidget* parent)
: QDialog(parent)
,_itemsDlg(nullptr)
,_attributeDlg(nullptr)
,_parent(nullptr)
{
_parent = dynamic_cast<MonitorPanel*>(parent);
this->setWindowFlags(Qt::FramelessWindowHint | windowFlags());
initial();
2025-11-25 20:29:32 +08:00
setMinimumWidth(200);
2025-11-21 19:22:41 +08:00
}
MonitorSideBarDlg::~MonitorSideBarDlg()
{
}
void MonitorSideBarDlg::initial()
{
_itemsDlg = new MonitorSelectedItemsDlg(this);
_attributeDlg = new MonitorAttributeDlg(this);
QVBoxLayout *sideLayout = new QVBoxLayout(this);
sideLayout->setContentsMargins(0, 0, 0, 0);
sideLayout->setSpacing(0);
// 创建垂直分割器
QSplitter *splitter = new QSplitter(Qt::Vertical);
2025-11-25 20:29:32 +08:00
splitter->setHandleWidth(1); // 设置分割条宽度
2025-11-21 19:22:41 +08:00
splitter->addWidget(_itemsDlg);
splitter->addWidget(_attributeDlg);
2025-11-25 20:29:32 +08:00
splitter->setStretchFactor(0, 1); // 第一个部件的拉伸因子为1
2025-11-26 20:33:13 +08:00
splitter->setStretchFactor(1, 3); // 第二个部件的拉伸因子为3
2025-11-21 19:22:41 +08:00
sideLayout->addWidget(splitter);
}