#include "metadatupdatepage.h" #include #include #include #include #include MetadataUpdatePage::MetadataUpdatePage(QWidget *parent) : QWidget(parent) { initUI(); } MetadataUpdatePage::~MetadataUpdatePage() { } void MetadataUpdatePage::initUI() { QHBoxLayout *mainLayout = new QHBoxLayout(this); mainLayout->setContentsMargins(50, 50, 50, 50); mainLayout->setSpacing(60); // ========================================== // UFT3更新范围 // ========================================== QVBoxLayout *uft3SectionLayout = new QVBoxLayout; uft3SectionLayout->setSpacing(15); QGroupBox *uft3Group = new QGroupBox("UFT3更新范围"); QGridLayout *uft3Grid = new QGridLayout(uft3Group); uft3Grid->setSpacing(15); uft3Grid->setContentsMargins(15, 15, 15, 15); m_uft3StdField = new ElaCheckBox("标准字段"); m_uft3StdField->setChecked(true); uft3Grid->addWidget(m_uft3StdField, 0, 0); m_uft3DataType = new ElaCheckBox("数据类型"); m_uft3DataType->setChecked(true); uft3Grid->addWidget(m_uft3DataType, 0, 1); m_uft3ErrorNo = new ElaCheckBox("标准错误号"); m_uft3ErrorNo->setChecked(true); uft3Grid->addWidget(m_uft3ErrorNo, 1, 0); m_uft3Interface = new ElaCheckBox("接口数据"); m_uft3Interface->setChecked(true); uft3Grid->addWidget(m_uft3Interface, 1, 1); uft3SectionLayout->addWidget(uft3Group); QHBoxLayout *uft3BtnLayout = new QHBoxLayout; uft3BtnLayout->setSpacing(15); ElaPushButton *uft3SelectAllBtn = new ElaPushButton("全选"); connect(uft3SelectAllBtn, &QPushButton::clicked, this, &MetadataUpdatePage::onUFT3SelectAll); ElaPushButton *uft3SelectNoneBtn = new ElaPushButton("全不选"); connect(uft3SelectNoneBtn, &QPushButton::clicked, this, &MetadataUpdatePage::onUFT3SelectNone); ElaPushButton *uft3UpdateBtn = new ElaPushButton("更新UFT3"); connect(uft3UpdateBtn, &QPushButton::clicked, this, &MetadataUpdatePage::onUpdateUFT3); uft3BtnLayout->addStretch(); uft3BtnLayout->addWidget(uft3SelectAllBtn); uft3BtnLayout->addWidget(uft3SelectNoneBtn); uft3BtnLayout->addWidget(uft3UpdateBtn); uft3BtnLayout->addStretch(); uft3SectionLayout->addLayout(uft3BtnLayout); mainLayout->addLayout(uft3SectionLayout); // ========================================== // UF20更新范围 // ========================================== QVBoxLayout *uf20SectionLayout = new QVBoxLayout; uf20SectionLayout->setSpacing(15); QGroupBox *uf20Group = new QGroupBox("UF20更新范围"); QGridLayout *uf20Grid = new QGridLayout(uf20Group); uf20Grid->setSpacing(15); uf20Grid->setContentsMargins(15, 15, 15, 15); m_uf20StdField = new ElaCheckBox("标准字段"); m_uf20StdField->setChecked(true); uf20Grid->addWidget(m_uf20StdField, 0, 0); m_uf20DataType = new ElaCheckBox("数据类型"); m_uf20DataType->setChecked(true); uf20Grid->addWidget(m_uf20DataType, 0, 1); m_uf20ErrorNo = new ElaCheckBox("标准错误号"); m_uf20ErrorNo->setChecked(true); uf20Grid->addWidget(m_uf20ErrorNo, 1, 0); m_uf20Table = new ElaCheckBox("表结构"); m_uf20Table->setChecked(true); uf20Grid->addWidget(m_uf20Table, 1, 1); m_uf20Interface = new ElaCheckBox("接口数据"); m_uf20Interface->setChecked(true); uf20Grid->addWidget(m_uf20Interface, 2, 0); uf20SectionLayout->addWidget(uf20Group); QHBoxLayout *uf20BtnLayout = new QHBoxLayout; uf20BtnLayout->setSpacing(15); ElaPushButton *uf20SelectAllBtn = new ElaPushButton("全选"); connect(uf20SelectAllBtn, &QPushButton::clicked, this, &MetadataUpdatePage::onUF20SelectAll); ElaPushButton *uf20SelectNoneBtn = new ElaPushButton("全不选"); connect(uf20SelectNoneBtn, &QPushButton::clicked, this, &MetadataUpdatePage::onUF20SelectNone); ElaPushButton *uf20UpdateBtn = new ElaPushButton("更新UF20"); connect(uf20UpdateBtn, &QPushButton::clicked, this, &MetadataUpdatePage::onUpdateUF20); uf20BtnLayout->addStretch(); uf20BtnLayout->addWidget(uf20SelectAllBtn); uf20BtnLayout->addWidget(uf20SelectNoneBtn); uf20BtnLayout->addWidget(uf20UpdateBtn); uf20BtnLayout->addStretch(); uf20SectionLayout->addLayout(uf20BtnLayout); mainLayout->addLayout(uf20SectionLayout); } void MetadataUpdatePage::onUF20SelectAll() { m_uf20StdField->setChecked(true); m_uf20DataType->setChecked(true); m_uf20ErrorNo->setChecked(true); m_uf20Table->setChecked(true); m_uf20Interface->setChecked(true); } void MetadataUpdatePage::onUF20SelectNone() { m_uf20StdField->setChecked(false); m_uf20DataType->setChecked(false); m_uf20ErrorNo->setChecked(false); m_uf20Table->setChecked(false); m_uf20Interface->setChecked(false); } void MetadataUpdatePage::onUpdateUF20() { QStringList selectedItems; if (m_uf20StdField->isChecked()) selectedItems << "标准字段"; if (m_uf20DataType->isChecked()) selectedItems << "数据类型"; if (m_uf20ErrorNo->isChecked()) selectedItems << "标准错误号"; if (m_uf20Table->isChecked()) selectedItems << "表结构"; if (m_uf20Interface->isChecked()) selectedItems << "接口数据"; if (selectedItems.isEmpty()) { QMessageBox::warning(this, "提示", "请选择至少一项更新内容"); return; } QMessageBox::information(this, "提示", QString("UF20更新功能开发中,已选择: %1").arg(selectedItems.join(", "))); } void MetadataUpdatePage::onUFT3SelectAll() { m_uft3StdField->setChecked(true); m_uft3DataType->setChecked(true); m_uft3ErrorNo->setChecked(true); m_uft3Interface->setChecked(true); } void MetadataUpdatePage::onUFT3SelectNone() { m_uft3StdField->setChecked(false); m_uft3DataType->setChecked(false); m_uft3ErrorNo->setChecked(false); m_uft3Interface->setChecked(false); } void MetadataUpdatePage::onUpdateUFT3() { QStringList selectedItems; if (m_uft3StdField->isChecked()) selectedItems << "标准字段"; if (m_uft3DataType->isChecked()) selectedItems << "数据类型"; if (m_uft3ErrorNo->isChecked()) selectedItems << "标准错误号"; if (m_uft3Interface->isChecked()) selectedItems << "接口数据"; if (selectedItems.isEmpty()) { QMessageBox::warning(this, "提示", "请选择至少一项更新内容"); return; } QMessageBox::information(this, "提示", QString("UFT3更新功能开发中,已选择: %1").arg(selectedItems.join(", "))); }