hlp:最多添加两个计数器,编辑计数器图元,只显示当前计数器的修改tab

This commit is contained in:
kite_lucs
2026-09-19 08:16:46 +08:00
parent b7e155d063
commit a18665b5f9
16 changed files with 183 additions and 16 deletions
+21 -2
View File
@@ -146,7 +146,7 @@ TestPrintWidget::TestPrintWidget(QWidget* parent)
vm.letterSpace = 1;
vm.cnt1Settings = m_printSettingModel.cnt1Settings;
vm.cnt2Settings = m_printSettingModel.cnt2Settings;
emit sig_showEditCounter(vm);
emit sig_showEditCounter(vm, false);
});
connect(ui.btnBarcode, &QPushButton::clicked, [this](){
@@ -715,7 +715,7 @@ void TestPrintWidget::onBtnItemConfigClicked()
vm.charWidth = counterItem->charWidth();
vm.cnt1Settings = m_printSettingModel.cnt1Settings;
vm.cnt2Settings = m_printSettingModel.cnt2Settings;
emit sig_showEditCounter(vm);
emit sig_showEditCounter(vm, true);
}
return;
}
@@ -1050,6 +1050,12 @@ void TestPrintWidget::addCounterItem(CounterViewModel vm, QSharedPointer<QFont>
}
}
// 最多两个计数器
if (getCounterNum() >= 2 && !flag) {
QMessageBox::warning(this, tr("警告"),tr("无法创建更多计数器"));
return;
}
QVector<int> currVals{vm.cnt1Settings.currValue, vm.cnt2Settings.currValue};
QFont font;
@@ -1100,6 +1106,19 @@ void TestPrintWidget::addCounterItem(CounterViewModel vm, QSharedPointer<QFont>
updateCountersCurrVal(currVals);
}
int TestPrintWidget::getCounterNum()
{
int count = 0;
const QList<QGraphicsItem *> items = pPicScene->items();
for (QGraphicsItem *it : items) {
if (auto *counter = dynamic_cast<PicCounterItem *>(it)) {
Q_UNUSED(counter);
++count;
}
}
return count;
}
QString TestPrintWidget::currentFile()
{
return xmlfileName;