diff --git a/CustomDoubleSpinBox.h b/CustomDoubleSpinBox.h new file mode 100644 index 0000000..fe85eea --- /dev/null +++ b/CustomDoubleSpinBox.h @@ -0,0 +1,24 @@ + +#ifndef _CUSTOM_DOUBLE_SPIN_BOX_H_ +#define _CUSTOM_DOUBLE_SPIN_BOX_H_ + +#include +#include + +class CustomDoubleSpinBox : public QDoubleSpinBox { +public: + explicit CustomDoubleSpinBox(QWidget *parent = nullptr) : QDoubleSpinBox(parent) { + // 设置一个较大的最大位数,让用户有足够的输入精度 + setDecimals(10); + } + +protected: + // 重写此方法,自定义数值如何显示在输入框中 + QString textFromValue(double value) const override { + // 使用 'g' 格式可以自动去掉末尾不必要的零 + // 或者使用 QString::number 配合手动处理 + return QString::number(value, 'g', decimals()); + } +}; + +#endif // _CUSTOM_DOUBLE_SPIN_BOX_H_ \ No newline at end of file diff --git a/DigitalInput.cpp b/DigitalInput.cpp index b4b69d8..90bdb97 100644 --- a/DigitalInput.cpp +++ b/DigitalInput.cpp @@ -3,7 +3,9 @@ #include "MyInputMethod.h" #include #include +#include #include +#include #include #include @@ -52,8 +54,7 @@ DigitalInput::~DigitalInput() void DigitalInput::onCharPressed(){ QPushButton * button = qobject_cast(sender()); QString ch = button->text(); - - if (!m_currSpinBox) { + if (!m_currSpinBox && !m_currDoubleSpinBox) { ui->traceEdit->insert(ch); return; } @@ -62,34 +63,60 @@ void DigitalInput::onCharPressed(){ QString currentText = ui->traceEdit->text(); QString newText = currentText.left(cursorPos) + ch + currentText.mid(cursorPos); - if (newText.isEmpty()) { + if (newText.isEmpty()) { + ui->traceEdit->insert(ch); + return; + } + + if(m_currDoubleSpinBox) { + // 用正则表达式判定 newText是否是一个浮点数或部分浮点输入。 + // 允许的示例: 0.2251, 15.335, 15, -924.02, 5. (末尾点为临时状态), .5 + // 也允许单独的正负号作为正在输入中的状态: "-" 或 "+" + QString simulated = newText; + + // Allow single sign while typing + if (simulated == "-" || simulated == "+") { + ui->traceEdit->insert(ch); + return; + } + + // Regular expression: optional sign, then either digits with optional dot+digits, or dot+digits, or digits+dot (partial) + // 不限制小数位数;最终的最小/最大以及精度由 hideEvent 写回时决定 + QRegularExpression re("^[+-]?((\\d+(\\.\\d*)?)|(\\.\\d*))$"); + QRegularExpressionMatch match = re.match(simulated); + if (!match.hasMatch()) { + // not a valid float format (even partial) -> reject + return; + } + + // acceptable -> insert + ui->traceEdit->insert(ch); + return; + } + + if(ch == "." && m_currSpinBox) { + // SpinBox不能输入 . + return; + } + + if(ch == "-" && m_currSpinBox->minimum() && currentText.isEmpty()) { ui->traceEdit->insert(ch); return; } bool ok = false; int value = newText.toInt(&ok); - if (!ok) { - ui->traceEdit->insert(ch); + if (!ok) { return; } int max = m_currSpinBox->maximum(); - if (value <= max) { + if (value <= max && value >= m_currSpinBox->minimum()) { ui->traceEdit->insert(ch); } } void DigitalInput::onKeyBackspacePressed(){ - -// if(m_currSpinBox && QString::number(m_currSpinBox->value()).size() == 1) { -// ui->traceEdit->clear(); -// } - -// #ifndef Q_OS_WIN32 -// //QWSServer::sendKeyEvent(0,Qt::Key_Backspace,Qt::NoModifier,true,false); //锟斤拷系统锟斤拷锟酵硷拷锟斤拷锟铰硷拷 -// MyInputMethod::sendEvent(Qt::Key_Backspace,Qt::NoModifier); -// #endif int cursorPos = ui->traceEdit->cursorPosition(); if (cursorPos > 0) { QString text = ui->traceEdit->text(); @@ -131,12 +158,6 @@ void DigitalInput::onEnterPressed() void DigitalInput::onClrPressed() { - // if(m_currSpinBox) { - // m_currSpinBox->setValue(std::min(m_currSpinBox->maximum(), std::max(m_currSpinBox->minimum(), 0))); - // ui->traceEdit->setText(m_currSpinBox->value()); - // // ui->traceEdit->setFocus(); - // } - ui->traceEdit->clear(); ui->traceEdit->setFocus(); } @@ -147,14 +168,28 @@ void DigitalInput::showEvent(QShowEvent *event) raise(); auto focusWidget = qApp->focusWidget(); + + QDoubleSpinBox* dbox = dynamic_cast(focusWidget); + if (dbox) { + m_currDoubleSpinBox = dbox; + m_currSpinBox = nullptr; + // Show value without padding trailing zeros (avoid decimals() padding) + ui->traceEdit->setText(QString::number(dbox->value(), 'g', 15)); + ui->traceEdit->setFocus(); + qDebug() << "The traceEdit has connected to the QDoubleSpinBox: " << dbox->objectName(); + return; + } + QSpinBox* box = dynamic_cast(focusWidget); if(!box) { - qWarning() << "focusWidget is not QSpinBox"; + qWarning() << "focusWidget is not QSpinBox or QDoubleSpinBox"; m_currSpinBox = nullptr; + m_currDoubleSpinBox = nullptr; return; } m_currSpinBox = box; + m_currDoubleSpinBox = nullptr; ui->traceEdit->setText(box->text()); // focusWidget->clearFocus(); ui->traceEdit->setFocus(); @@ -167,6 +202,18 @@ void DigitalInput::hideEvent(QHideEvent * event) { QWidget::hideEvent(event); + if (m_currDoubleSpinBox) { + bool ok = false; + double value = ui->traceEdit->text().toDouble(&ok); + if (!ok) value = m_currDoubleSpinBox->value(); + double min = m_currDoubleSpinBox->minimum(); + double max = m_currDoubleSpinBox->maximum(); + value = qBound(min, value, max); + m_currDoubleSpinBox->setValue(value); + m_currDoubleSpinBox->clearFocus(); + return; + } + if(m_currSpinBox) { int value = ui->traceEdit->text().toInt(); int min = m_currSpinBox->minimum(); diff --git a/DigitalInput.h b/DigitalInput.h index 2d6c864..fa4044b 100644 --- a/DigitalInput.h +++ b/DigitalInput.h @@ -3,6 +3,7 @@ #include #include +#include class MyInputMethod; namespace Ui { @@ -36,6 +37,7 @@ private: MyInputMethod *myInputMethod; QSpinBox* m_currSpinBox = nullptr; + QDoubleSpinBox* m_currDoubleSpinBox = nullptr; }; #endif // DIGITALINPUT_H diff --git a/InkJetPrinter.cpp b/InkJetPrinter.cpp index d501a3f..f564efb 100644 --- a/InkJetPrinter.cpp +++ b/InkJetPrinter.cpp @@ -1809,12 +1809,13 @@ bool InkJetPrinter::eventFilter(QObject *watched, QEvent *event) // return QTabWidget::eventFilter(watched,event); //qDebug()<<"eventFilter"; QSpinBox *qsb=dynamic_cast(watched); + QDoubleSpinBox* qdsb = dynamic_cast(watched); QLineEdit *qle=dynamic_cast(watched); QTextEdit *qte=dynamic_cast(watched); QWidget *widget = qobject_cast(watched); switch (event->type()){ case QEvent::FocusIn: - if(qsb&&!qsb->isReadOnly()||qle&&!qle->isReadOnly()||qte&&!qte->isReadOnly() && watched->objectName() != "inputPreviewBox") + if(qsb&&!qsb->isReadOnly()||qle&&!qle->isReadOnly()||qte&&!qte->isReadOnly() && watched->objectName() != "inputPreviewBox" || qdsb && !qdsb->isReadOnly()) myInputMethod->updateHandler(1); break; case QEvent::FocusOut: diff --git a/MyInputMethod.cpp b/MyInputMethod.cpp index 6f34389..3f45cf6 100644 --- a/MyInputMethod.cpp +++ b/MyInputMethod.cpp @@ -124,7 +124,7 @@ void MyInputMethod::updateHandler ( int type ){ switch(type){ case 0:break; case 1: - if(widget && (dynamic_cast(widget))){ + if(widget && (dynamic_cast(widget) || dynamic_cast(widget))){ if(digitalInput->isHidden()){ QWidget *hostWindow = widget->window(); QRect rec = QApplication::desktop()->screenGeometry(); diff --git a/Printsetting.cpp b/Printsetting.cpp index c34c4a8..9a9fcbf 100644 --- a/Printsetting.cpp +++ b/Printsetting.cpp @@ -89,6 +89,14 @@ void PrintSetting::init() if(b) on_radioButtonSynTriggerExternal_clicked(); }); + + connect(ui->dsb_diameter, QOverload::of(&QDoubleSpinBox::valueChanged), this, [this](double v){ + updateTriggerPPM(); + }); + + connect(ui->dsb_pulsePerCycle, QOverload::of(&QDoubleSpinBox::valueChanged), this, [this](double v){ + updateTriggerPPM(); + }); } extern void MySleep(unsigned int msec); @@ -124,8 +132,13 @@ void PrintSetting::updateModelFromUI(){ m_model.eleEyeTriggerPrintDelay = ui->spinBoxEleEyeTriggerPrintDelay->value(); m_model.timeTriggerPrintMode = 0; m_model.triggerInterval = ui->spinBoxEleEyeTriggerIntervalMs->value(); + + updateTriggerPPM(); m_model.encoderPulsePerMm = ui->lineEditTriggerPulsePerMm->text().toFloat(); + m_model.encoderDiameter = ui->dsb_diameter->value(); + m_model.encoderPulsePerCycle = ui->dsb_pulsePerCycle->value(); + if(ui->eleEyeEdgetTriggerExternal->isChecked() && ui->radioButtonSynTriggerExternal->isChecked()) { m_model.triggerMode = ui->radioButtonEleEyeEdgetTrigger->isChecked() ? PRINT_TRIGGER_ELEC_EYE_EDGE : PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL; } @@ -215,7 +228,16 @@ void PrintSetting::TriggerupdateModelToUI() ui->spinBoxEleEyeTriggerRepeatCnt->setValue(m_model.eleEyeRepeatCnt); ui->spinBoxSynTriggerPrintLen->setText(QString::number(m_model.triggerInterval)); - ui->lineEditTriggerPulsePerMm->setText(QString::number((double)m_model.encoderPulsePerMm)); + + auto b = ui->dsb_diameter->blockSignals(true); + ui->dsb_diameter->setValue(m_model.encoderDiameter); + ui->dsb_diameter->blockSignals(b); + + b = ui->dsb_pulsePerCycle->blockSignals(true); + ui->dsb_pulsePerCycle->setValue(m_model.encoderPulsePerCycle); + ui->dsb_pulsePerCycle->blockSignals(b); + + updateTriggerPPM(); ui->comboBoxEleEyeMakeClean->setCurrentIndex(0); @@ -241,10 +263,10 @@ void PrintSetting::TriggerupdateModelToUI() void PrintSetting::updateSysStatusToUI(){ } -void PrintSetting::on_pushButtonApplyPulseFix_clicked() +void PrintSetting::updateTriggerPPM() { - float circle = ui->lineEditDiameter->text().toFloat() * 3.1415926; - float pulseNum = ui->lineEditPulsePerCycle->text().toFloat(); + double circle = ui->dsb_diameter->value() * 3.1415926; + double pulseNum = ui->dsb_pulsePerCycle->value(); if(circle != 0){ auto pulseNumPerMM = 4*pulseNum/circle; //电路和Fpga做了4倍频处理,这里乘以4是为了匹配4倍频的处理进行正确的显示 m_model.encoderPulsePerMm = pulseNumPerMM; @@ -252,15 +274,6 @@ void PrintSetting::on_pushButtonApplyPulseFix_clicked() ui->lineEditTriggerPulsePerMm->setText(QString::number(pulseNumPerMM)); ui->lineEditTriggerPulsePerMm->blockSignals(b); } - - return; - - if(!sysPara) - return; - - pulseNumFix->bindSysPara(sysPara); - pulseNumFix->hide(); - pulseNumFix->show(); } void PrintSetting::onPulseNumFixDone(float value){ @@ -304,16 +317,6 @@ void PrintSetting::on_radioButtonEleEyeLevelTrigger_pressed() void PrintSetting::on_radioButtonSynTrigger_pressed() { setTriggerUI(PRINT_TRIGGER_SYNCHRONIZER); - //edit@11-19 - // const unsigned short &FpgaVer=sysPara->status.build_dat.builTime; - // //72版本禁用字符宽度 - // if(72 == FpgaVer){ - // ui->spinBoxSynTriggerPrintLenRatio->setValue(0); - // ui->spinBoxSynTriggerPrintLenRatio->setEnabled(0); - // }else if (67 == FpgaVer) - // ui->spinBoxSynTriggerPrintLenRatio->setEnabled(1); - // emit synDisableFontWidth(true); - } void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked) @@ -327,16 +330,6 @@ void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked) #ifndef NON_CABLE // ui->spinBoxSynTriggerPrintLen->setEnabled(1); #endif - // ui->labelSynTriggerPrintLen->setEnabled(1); - // ui->lineEditTriggerPulsePerMm->setEnabled(1); - // ui->labelTriggerPulsePerMm->setEnabled(1); - // ui->spinBoxSynTriggerPrintLenRatio->setEnabled(1); - // ui->labelSynTriggerPrintLenRatio->setEnabled(1); - // ui->checkBoxEleEyeMakeClean->setEnabled(1); - // ui->pushButtonApplyPulseFix->setEnabled(1); - // ui->comboBoxSynPrintMode->setEnabled(1); - // ui->labelSynPrintMode->setEnabled(1); - // ui->spinBoxEleEyeTriggerIntervalMs->setEnabled(0); ui->labelEleEyeTriggerPrintDelay->setText(tr("触发延时(毫米)")); ui->labelEleEyeTriggerIntervalMs->setText(tr("重复间隔(毫米)")); ui->labelEleMaskTime->setText(tr("抑止距离(毫米)")); @@ -351,16 +344,6 @@ void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked) #ifndef NON_CABLE // ui->spinBoxSynTriggerPrintLen->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); #endif - // ui->labelSynTriggerPrintLen->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->lineEditTriggerPulsePerMm->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->labelTriggerPulsePerMm->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->spinBoxSynTriggerPrintLenRatio->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->labelSynTriggerPrintLenRatio->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->checkBoxEleEyeMakeClean->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->pushButtonApplyPulseFix->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->comboBoxSynPrintMode->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->labelSynPrintMode->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER); - // ui->spinBoxEleEyeTriggerIntervalMs->setEnabled(1); ui->labelEleEyeTriggerPrintDelay->setText(tr("触发延时(毫秒)")); ui->labelEleEyeTriggerIntervalMs->setText(tr("重复间隔(毫秒)")); ui->labelEleMaskTime->setText(tr("抑止距离(毫秒)")); @@ -602,8 +585,8 @@ void PrintSetting::on_eleEyeEdgetTriggerExternal_clicked() void PrintSetting::setEnableSynTriggerSetting(bool flag){ // ui->labelTriggerPulsePerMm->setEnabled(flag); - ui->lineEditTriggerPulsePerMm->setEnabled(flag); - ui->pushButtonApplyPulseFix->setEnabled(flag); + ui->lineEditTriggerPulsePerMm->setEnabled(false); + // ui->pushButtonApplyPulseFix->setEnabled(flag); // ui->labelSynTriggerPrintLen->setEnabled(flag); ui->spinBoxSynTriggerPrintLen->setEnabled(flag); ui->comboBoxSyncActType->setEnabled(flag); @@ -732,6 +715,8 @@ void PrintSettingModel::loadFromXml(PrintSettingModel& model, const QXmlStreamAt model.unlimitedRepeat = attrs.value("unlimitedRepeat").toInt() != 0; model.triggerMode = attrs.value("triggerMode").toUInt(); model.encoderPulsePerMm = attrs.value("encoderPulsePerMm").toFloat(); + model.encoderDiameter = attrs.value("encoderDiameter").toDouble(); + model.encoderPulsePerCycle = attrs.value("encoderPulsePerCycle").toDouble(); model.printColDelay = attrs.value("printColDelay").toUInt(); model.volParaIndex = (unsigned short)attrs.value("volParaIndex").toUInt(); model.eleEyeTriggerPrintDelay = (unsigned short)attrs.value("eleEyeTriggerPrintDelay").toUInt(); @@ -773,6 +758,8 @@ void PrintSettingModel::saveToXml(const PrintSettingModel& model, QXmlStreamWrit writer.writeAttribute("unlimitedRepeat", QString::number(model.unlimitedRepeat)); writer.writeAttribute("triggerMode", QString::number(model.triggerMode)); writer.writeAttribute("encoderPulsePerMm", QString::number((double)model.encoderPulsePerMm)); + writer.writeAttribute("encoderPulsePerCycle", QString::number(model.encoderPulsePerCycle)); + writer.writeAttribute("encoderDiameter", QString::number(model.encoderDiameter)); writer.writeAttribute("printColDelay", QString::number(model.printColDelay)); writer.writeAttribute("volParaIndex", QString::number(model.volParaIndex)); writer.writeAttribute("eleEyeTriggerPrintDelay", QString::number(model.eleEyeTriggerPrintDelay)); diff --git a/Printsetting.h b/Printsetting.h index fe1b159..5aa99c9 100644 --- a/Printsetting.h +++ b/Printsetting.h @@ -42,6 +42,10 @@ struct PrintSettingModel float encoderPulsePerMm = 40; // 编码器的每毫米脉冲数 + double encoderDiameter = 10; // 编码器的直径,单位毫米 + + double encoderPulsePerCycle = 5000; // 编码器每圈的脉冲数 + unsigned printColDelay = 6; // 打印列延迟,(字宽) unsigned short volParaIndex = 0; // 喷印模式的索引, 决定选择哪组电压参数 @@ -145,7 +149,7 @@ public: private slots: void buttonClickedSlot(); - void on_pushButtonApplyPulseFix_clicked(); + void updateTriggerPPM(); void onPulseNumFixDone(float); diff --git a/Printsetting.ui b/Printsetting.ui index 912f867..b2df729 100644 --- a/Printsetting.ui +++ b/Printsetting.ui @@ -592,6 +592,9 @@ + + false + 0 @@ -816,19 +819,6 @@ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - 400 - 220 - 161 - 31 - - - - Qt::ImhNone - - @@ -861,49 +851,57 @@ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - + 400 170 - 161 + 171 31 - - Qt::ImhNone + + QAbstractSpinBox::NoButtons + + + 10 + + + 1.000000000000000 + + + 10000000.000000000000000 + + + 100.000000000000000 + + + 5000.000000000000000 - + 400 - 260 - 161 - 37 + 220 + 171 + 31 - - - 0 - 0 - + + QAbstractSpinBox::NoButtons - - - 150 - 0 - + + 10 - - Qt::LeftToRight + + 5.000000000000000 - - 脉冲数修正 + + 10000.000000000000000 - - - :/icon/pulse.png:/icon/pulse.png + + 100.000000000000000 @@ -1484,6 +1482,11 @@ pressed() + + CustomDoubleSpinBox + QDoubleSpinBox +
CustomDoubleSpinBox.h
+
diff --git a/QtUI.pro b/QtUI.pro index c62631b..b19b2e5 100644 --- a/QtUI.pro +++ b/QtUI.pro @@ -184,7 +184,8 @@ HEADERS += Public.h \ runtimectrl.h \ dump.h \ DlgCanvasHeightEditor.h \ - StateMachine/PrinterStateManager.h + StateMachine/PrinterStateManager.h \ + CustomDoubleSpinBox.h FORMS += \ diff --git a/TestPrintWidget.ui b/TestPrintWidget.ui index 1a1fdab..9e4b491 100644 --- a/TestPrintWidget.ui +++ b/TestPrintWidget.ui @@ -498,6 +498,39 @@
+ + + + QPushButton { + background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); + border: 1px solid #a0a0a0; + border-radius: 8px; + padding: 8px 12px; + min-width: 90px; + min-height: 50px; + } + QPushButton:hover { + background-color: #d0d0d0; + } + QPushButton:pressed { + background-color: #c0c0c0; + } + + + 另存为 + + + + :/image/saveAs.png:/image/saveAs.png + + + + 62 + 62 + + + + diff --git a/chinese.ts b/chinese.ts index 90612e9..6a6e279 100644 --- a/chinese.ts +++ b/chinese.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ diff --git a/english.ts b/english.ts index 90612e9..6a6e279 100644 --- a/english.ts +++ b/english.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ diff --git a/farsi.ts b/farsi.ts index 90612e9..6a6e279 100644 --- a/farsi.ts +++ b/farsi.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ diff --git a/image.qrc b/image.qrc index e498a19..96569ca 100644 --- a/image.qrc +++ b/image.qrc @@ -149,5 +149,6 @@ image/up_white.png image/RePipeClose.png image/RePipeOpen.png + image/saveAs.png diff --git a/image/saveAs.png b/image/saveAs.png new file mode 100644 index 0000000..18bd729 Binary files /dev/null and b/image/saveAs.png differ diff --git a/korean.ts b/korean.ts index a76ada9..4909fa9 100644 --- a/korean.ts +++ b/korean.ts @@ -3310,7 +3310,7 @@ - + 提示 팁 @@ -3402,7 +3402,7 @@ 솔벤트 TAG을 리드하겠습니까? %1초 후 자동 확인 - + 刷溶剂卡成功! 确认要刷卡吗? 솔벤트 TAG 리드 성공! @@ -3424,7 +3424,7 @@ 먼저 잉크을 보충한 후 TAG을 사용하십시오! - + 刷墨水卡成功! 잉크 TAG 리드 성공! @@ -3470,29 +3470,29 @@ 재부팅을 준비하는 중입니다. %1 초 동안 기다려 주십시오... - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 유지보수 주기 만료까지 %1일 남았습니다. 제때 유지보수를 실시하십시오. - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 유지보수 주기가 %1일 초과되었습니다. 잉크젯 프린터의 정상 사용을 복구하려면 유지보수를 실시하십시오. - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! 잉크 TAG를 인식해 주세요. 정품 잉크를 사용해 주세요. 그렇지 않을 경우 %1시간 후 사용이 중지됩니다! - + flagOfPowerOnMode: %1 flagOfPowerOnMode: %1 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 압력이 너무 높습니다. 배관이 막혔는지 확인한 후 오류 복구 버튼을 누르십시오. @@ -3597,54 +3597,54 @@ 기어 펌프 회전 속도가 너무 높습니다. 즉시 정지하고 공급업체에 연락하십시오. - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! 잉크 레벨 경보가 48시간을 초과했습니다. 장비의 정상 작동을 복구하기 위해 잉크를 추가하고 잉크 TAG을 리드하세요 - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! 솔벤트 TAG를 리드하시고 정품 솔벤트를 사용하십시오. 그렇지 않으면 %1시간 후에 장비 사용이 금지됩니다! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! 솔벤트 수위 경보가 48시간을 초과했습니다. 장비의 정상 작동을 복구하기 위해 솔벤트를 추가하고 솔벤트 TAG를 리드하세요 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 잉크 TAG 리드 성공, 해당 잉크 카드에 대응하는 잉크를 장비에 즉시 보충해 주세요 - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 솔벤트 TAG 리드 성공, 해당 솔벤트 카드에 대응하는 솔벤트를 장비에 즉시 보충해 주세요 - + 请及时使用墨水盒附带的IC卡激活墨水盒 잉크 용기에 동봉된 IC 카드로 잉크 용기를 즉시 활성화해 주세요 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 솔벤트 용기에 동봉된 IC 카드로 솔벤트 용기를 즉시 활성화해 주세요 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 File not found: %1 @@ -3653,7 +3653,7 @@ 유지보수 주기가 %1일 초과되었습니다. 제때 유지보수를 실시하십시오. 그렇지 않으면 잉크젯 프린터가 손상될 수 있습니다. - + 刷卡倒计时起始时间文件不存在 카드 사용 카운트다운 시작 시간 파일이 존재하지 않습니다. @@ -3838,7 +3838,7 @@ 잉크 선 빠른 닫기 완료 - + 警告 경고 @@ -3917,9 +3917,9 @@ %1/%2/%3 - - - + + + 正在准备重启,请等待%1秒...... 재시작 준비 중, %1초 대기... @@ -3960,8 +3960,8 @@ 오류!!!!!!!!!!!점도 이상 - + 电机故障 모터 에러 @@ -3970,13 +3970,13 @@ 모터 에러!!! - + 回收槽到头 거터 최대 위치 도달 - + 回收槽卡住或者回收槽开关时间设置错误 거터가 걸렸거나 거터 개폐 시간 설정이 잘못되었습니다. @@ -8000,27 +8000,27 @@ configuration. PrintGo 신호 페이지 1 - + 脉冲信号值: 펄스 신호 값: - + 无镜像打印 미러 없음 - + 自动水平翻转 자동 수평 반전 - + 自动垂直翻转 자동 수직 반전 - + 中心对称旋转 중심 대칭 회전 @@ -8029,8 +8029,8 @@ configuration. 미러 모드 - - + + 延时(毫秒): 지연(ms): @@ -8039,18 +8039,18 @@ configuration. 미러 교대 간격 - - + + 触发延时(毫秒) 트리거 지연(ms) - + 脉冲输出使能 펄스 출력 활성화 - + 禁止电眼清零 센서 초기화 금지 @@ -8065,47 +8065,47 @@ configuration. 무한길이 - + 带补偿的正转打印 보정 정방향 인쇄 - + 带补偿的反转打印 보정 역방향 인쇄 - + 同步器直径(毫米): 엔코더 직경(mm): - + 脉冲数/转: 펄스 수/회전: - + 允许电眼复位 센서 리셋 허용 - + 允许电眼立即复位 센서 즉시 리셋 허용 - + 电眼清零 센서 카운터 초기화 - + 字符宽度: 문자 너비: - + 产生脉冲所需计数: 펄스 생성 필요 카운트: @@ -8167,13 +8167,13 @@ configuration. - + 内部 내부 - + 外部 외부 @@ -8192,22 +8192,22 @@ configuration. 펄스/mm: - + 喷印间隔(毫米): 인쇄 간격(mm): - + 同步喷印模式: 동기 인쇄 모드: - + 镜象交替类型: 미러 교대 모드: - + 镜像交替间隔: 미러 교대 간격: @@ -8217,9 +8217,8 @@ configuration. 펄스/mm - 脉冲数修正 - 펄스 수 보정 + 펄스 수 보정 喷印间隔(毫米) @@ -8230,27 +8229,27 @@ configuration. 동기 인쇄 모드 - + 按字符宽度 글자 너비 기준 - + 按喷印比例 인쇄 비율 기준 - + 同步器正反转打印 엔코더 정/역방향 인쇄 - + 同步器只正转打印 엔코더 정방향 인쇄만 허용 - + 同步器只反转打印 엔코더 역방향 인쇄만 허용 @@ -8259,8 +8258,8 @@ configuration. 반복 횟수 - - + + 重复间隔(毫秒) 반복 간격(ms) @@ -8269,7 +8268,7 @@ configuration. 엔코더 인쇄 활성화 - + 封锁时间(毫秒) 트리거 신호 무시(ms) @@ -8278,52 +8277,52 @@ configuration. 엔코더 카운터 초기화 - + 间隔模式: 간격 모드: - + 行末<->行首 행 끝 ↔ 행 시작 - + 行首<->行首 행 시작 ↔ 행 시작 - + 同步器来源 엔코더 - + 调试设置 디버깅 설정 - + 开启墨点飞行补偿 잉크 점 비행 보정 활성화 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 잉크 점 비행 보정 통계 창(시스템 클럭 사이클), 0은 상관 검사에서 얻은 비행 시간 사용을 의미합니다. - + 启用加减速预测 가속/감속 예측 활성화 - + ✕ ✕ - + ✓ ✓ @@ -8505,13 +8504,13 @@ configuration. 조건: (반복 횟수 + 시작 위치) < 교대 간격 - - + + 提示 팁 - + 应用成功 적용 성공 @@ -8524,38 +8523,38 @@ configuration. 요구사항: 트리거 길이는 인쇄 간격보다 작아야 함 - - + + 延时(毫米): 지연(mm): - - - + + + 触发延时(毫米) 트리거 지연(mm) - + 默认设置已保存 기본 설정 저장 - - - + + + 重复间隔(毫米) 반복 간격(mm) - - + + 抑止距离(毫米) 인쇄신호 제어 거리(mm) - + 抑止距离(毫秒) 인쇄 신호 제어 거리(ms) @@ -8568,12 +8567,12 @@ configuration. 잠금 간격(ms) - + 字符宽度 문자 너비 - + 喷印比例(%) 인쇄 비율(%) @@ -8634,7 +8633,7 @@ configuration. 권한 해제 - + 其他设置 기타 설정 @@ -11004,17 +11003,17 @@ configuration. - + background-color:#828E9E; - + UK UK - + US US @@ -11082,8 +11081,13 @@ configuration. 저장 - + + 另存为 + 다른 이름으로 저장 + + + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -11101,23 +11105,23 @@ configuration. - + 打印设置 인쇄 설정 - + 图元设置 설정 - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -11133,52 +11137,52 @@ configuration. - + 复制 복사 - + 粘贴 붙여넣기 - + 删除 Delete - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot @@ -11187,8 +11191,8 @@ configuration. JET2neo-TEST - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -11207,19 +11211,19 @@ configuration. - + << << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -11232,20 +11236,20 @@ configuration. - + Y:9 Y:9 - + X:105 X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -11265,32 +11269,32 @@ configuration. - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ ✓ diff --git a/spanish.ts b/spanish.ts index 90612e9..6a6e279 100644 --- a/spanish.ts +++ b/spanish.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ diff --git a/testprintwidget.cpp b/testprintwidget.cpp index 7213ef7..b247db6 100644 --- a/testprintwidget.cpp +++ b/testprintwidget.cpp @@ -201,6 +201,8 @@ TestPrintWidget::TestPrintWidget(QWidget* parent) // 网络通信,暂时屏蔽 // ui.btnList->hide(); + + connect(ui.btnSaveAs, &QPushButton::clicked, this, &TestPrintWidget::onBtnSaveAsClicked); } void TestPrintWidget::bindSysPara(SysPara *sysPara) @@ -1159,3 +1161,18 @@ void TestPrintWidget::on_btn_paste_clicked() { pasteCopiedLayer(); } + +void TestPrintWidget::onBtnSaveAsClicked() +{ + dialogSaveFile->refreshListView(SCENE); + dialogSaveFile->setEnterFileName(""); + auto ret = dialogSaveFile->exec(); + + if(ret == QDialog::Accepted) { + auto filename = dialogSaveFile->filename(); + if(!filename.endsWith(".xml",Qt::CaseInsensitive)) + filename += ".xml"; + + saveFile(filename); + } +} diff --git a/testprintwidget.h b/testprintwidget.h index 01c2c56..f1163d0 100644 --- a/testprintwidget.h +++ b/testprintwidget.h @@ -108,6 +108,8 @@ private slots: // 粘贴 void on_btn_paste_clicked(); + void onBtnSaveAsClicked(); + private: // UI对象 Ui::TestPrintWidget ui; diff --git a/thai.ts b/thai.ts index 90612e9..6a6e279 100644 --- a/thai.ts +++ b/thai.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ diff --git a/turkey.ts b/turkey.ts index 90612e9..6a6e279 100644 --- a/turkey.ts +++ b/turkey.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓ diff --git a/vena.ts b/vena.ts index 90612e9..6a6e279 100644 --- a/vena.ts +++ b/vena.ts @@ -1933,13 +1933,13 @@ - + 警告 - + 提示 @@ -1959,9 +1959,9 @@ - - - + + + 正在准备重启,请等待%1秒...... @@ -2005,113 +2005,113 @@ - + flagOfPowerOnMode: %1 - + 电机故障 - + 回收槽到头 - + 回收槽卡住或者回收槽开关时间设置错误 - + 压力过高,请检查管路是否堵塞,然后点击故障恢复按钮 - - - + + + 请刷墨水卡,请使用原厂墨水耗材,否则机器将在%1小时后禁止使用! - + 墨水液位报警超过48小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - - - + + + 请刷溶剂卡,请使用原厂溶剂耗材,否则机器将在%1小时后禁止使用! - + 溶剂液位报警超过48小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + 保养期还有%1天到期,请及时保养,否则喷码机容易损坏 - + 保养期已超过%1天,请进行保养以恢复喷码机的正常使用 - + 刷墨水卡成功, 请及时将该墨水卡对应的墨水添加到机器中 - + 刷墨水卡成功! - + 刷溶剂卡成功, 请及时将该溶剂卡对应的溶剂添加到机器中 - + 刷溶剂卡成功! - + 请及时使用墨水盒附带的IC卡激活墨水盒 - + 墨水液位报警超过%1小时,机器无法正常打印,请先添加原厂墨水再刷墨水卡,以恢复喷码机的正常工作! - + 请及时使用溶剂盒附带的IC卡激活溶剂盒 - + 溶剂液位报警超过%1小时,机器无法正常打印,请先添加溶剂再刷溶剂卡以恢复喷码机的正常工作! - + File not found: %1 - + 刷卡倒计时起始时间文件不存在 @@ -3749,12 +3749,12 @@ p, li { white-space: pre-wrap; } - + 喷印间隔(毫米): - + 同步喷印模式: @@ -3774,100 +3774,100 @@ p, li { white-space: pre-wrap; } - + 脉冲信号值: - + 无镜像打印 - + 自动水平翻转 - + 自动垂直翻转 - + 中心对称旋转 - - + + 延时(毫秒): - - + + 触发延时(毫秒) - + 脉冲输出使能 - + 禁止电眼清零 - + 允许电眼复位 - + 允许电眼立即复位 - + 电眼清零 - + 字符宽度: - + 产生脉冲所需计数: - + 间隔模式: - + 行末<->行首 - + 行首<->行首 - - + + 重复间隔(毫秒) - + 封锁时间(毫秒) @@ -3878,13 +3878,13 @@ p, li { white-space: pre-wrap; } - + 内部 - + 外部 @@ -3904,159 +3904,154 @@ p, li { white-space: pre-wrap; } - - 脉冲数修正 - - - - + 按字符宽度 - + 按喷印比例 - + 同步器正反转打印 - + 同步器只正转打印 - + 同步器只反转打印 - + 带补偿的正转打印 - + 带补偿的反转打印 - + 同步器来源 - + 同步器直径(毫米): - + 脉冲数/转: - + 其他设置 - + 镜象交替类型: - + 镜像交替间隔: - + 调试设置 - + 开启墨点飞行补偿 - + 墨点飞行补偿统计窗口(系统时钟周期), 0表示使用相检得到的飞行时间 - + 启用加减速预测 - + ✕ - + ✓ - - + + 提示 - + 应用成功 - - + + 延时(毫米): - - - + + + 触发延时(毫米) - + 默认设置已保存 - - - + + + 重复间隔(毫米) - - + + 抑止距离(毫米) - + 抑止距离(毫秒) - + 字符宽度 - + 喷印比例(%) @@ -5655,13 +5650,13 @@ p, li { white-space: pre-wrap; } - + background-color:#828E9E; - + QPushButton { background: qlineargradient(x1: 0.5, y1: 0, x2: 0.5, y2: 1, stop: 0 #6F9CD6, stop: 1 #FFFFFF); border: 1px solid #a0a0a0; @@ -5679,13 +5674,13 @@ p, li { white-space: pre-wrap; } - + background-color:#C4C5C9; - - + + QPushButton { background-color: #ffffff; border: 1px solid #a8a8a8; @@ -5737,77 +5732,82 @@ p, li { white-space: pre-wrap; } - 打印设置 + 另存为 + 打印设置 + + + + 图元设置 - + 复制 - + 粘贴 - + 删除 - + 5 dot - + 7 dot - + 9 dot - + 12 dot - + 16 dot - + 24 dot - + 32 dot - + UK - + US - - + + QPushButton { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5826,19 +5826,19 @@ p, li { white-space: pre-wrap; } - + << - + >> - - - + + + QLabel { background-color: #e5e5e5; border: 1px solid #a8a8a8; @@ -5851,20 +5851,20 @@ p, li { white-space: pre-wrap; } - + Y:9 - + X:105 - - - - + + + + QPushButton { background-color: #87CEEB; border: 1px solid #4682B4; @@ -5884,32 +5884,32 @@ p, li { white-space: pre-wrap; } - + ↑ - + ← - + → - + ↓ - + ID:1 - + ✓