2026年5月25日15:57:50

This commit is contained in:
2026-05-25 15:58:11 +08:00
parent 1cb9d5ac42
commit 358a56f602
20 changed files with 413 additions and 492 deletions
+33 -16
View File
@@ -29,7 +29,7 @@ PrintSetting::PrintSetting(QWidget *parent) :
init();
ui->eleEyeEdgetTriggerInner->click();
ui->radioButtonSynTriggerExternal->click();
ui->radioButtonSynTriggerInner->click();
}
PrintSetting::~PrintSetting()
@@ -125,9 +125,15 @@ void PrintSetting::TriggerupdateSysParaToUI(){
if(sysPara)
{
/*----------------------------------------*/
setTriggerUI(sysPara->para.printTriggerMode);
if (sysPara->para.eleEyeTriggerSynPrintEn) //电眼触发的同步打印使能,电眼和同步器都选外部
{
sysPara->para.eleEyeEdgetTriggerInner = 0;
sysPara->para.synTriggerInner = 0;
sysPara->para.eleEyeEdgetTriggerExternal = 1;
sysPara->para.synTriggerExternal = 1;
}
ui->eleEyeEdgetTriggerInner->setChecked(sysPara->para.eleEyeEdgetTriggerInner);
ui->eleEyeEdgetTriggerExternal->setChecked(sysPara->para.eleEyeEdgetTriggerExternal);
ui->radioButtonSynTriggerInner->setChecked(sysPara->para.synTriggerInner);
@@ -177,10 +183,9 @@ void PrintSetting::TriggerupdateSysParaToUI(){
if(sysPara->para.printTriggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE)
ui->radioButtonEleEyeEdgetTrigger->setChecked(true);
if( sysPara->para.printTriggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL){
if( sysPara->para.printTriggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL)
ui->radioButtonEleEyeLevelTrigger->setChecked(true);
}
}
}
@@ -223,6 +228,10 @@ void PrintSetting::applyUITriggerPara(){
sysPara->para.eleEyeEdgetTriggerExternal = ui->eleEyeEdgetTriggerExternal->isChecked();
sysPara->para.synTriggerInner = ui->radioButtonSynTriggerInner->isChecked();
sysPara->para.synTriggerExternal = ui->radioButtonSynTriggerExternal->isChecked();
// 电眼和同步器都选外部时,就是同步
sysPara->para.eleEyeTriggerSynPrintEn =
sysPara->para.eleEyeEdgetTriggerExternal && sysPara->para.synTriggerExternal? 1 : 0;
sysPara->para.pulseOutputEnable = ui->checkBoxPulseOutputEnable->isChecked();
sysPara->para.productCntPerOutputPulse = ui->spinBoxProductCntPerOutputPulse->value();
@@ -252,7 +261,7 @@ void PrintSetting::GetTriggerUIPara(){
sysPara->para.timeTriggerPrintMode = ui->comboBoxTimeTriggerMode->currentIndex();
sysPara->para.elecEyeTriggerInterval = ui->spinBoxEleEyeTriggerIntervalMs->value(); //电眼触发的重复间隔
int value = 0;
if (ui->cb_unlimited) value = 65535;
if (ui->cb_unlimited->isChecked()) value = 65535;
else value = ui->spinBoxEleEyeTriggerRepeatCnt->value();
sysPara->para.photoElectricityRepeateNum = value;
@@ -354,6 +363,7 @@ void PrintSetting::on_radioButtonSynTrigger_pressed()
void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked)
{
ui->cb_unlimited->setEnabled(checked);
if(sysPara)
{
int triggerMode = sysPara->para.printTriggerMode;
@@ -371,7 +381,6 @@ void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked)
ui->pushButtonApplyPulseFix->setEnabled(1);
ui->comboBoxSynPrintMode->setEnabled(1);
ui->labelSynPrintMode->setEnabled(1);
ui->cb_unlimited->setEnabled (1);
ui->spinBoxEleEyeTriggerIntervalMs->setEnabled(0);
ui->labelEleEyeTriggerPrintDelay->setText(tr("触发延时(毫米)"));
ui->labelEleEyeTriggerIntervalMs->setText(tr("重复间隔(毫米)"));
@@ -396,7 +405,6 @@ void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked)
ui->pushButtonApplyPulseFix->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER);
ui->comboBoxSynPrintMode->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER);
ui->labelSynPrintMode->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER);
ui->cb_unlimited->setEnabled(triggerMode == PRINT_TRIGGER_SYNCHRONIZER);
ui->spinBoxEleEyeTriggerIntervalMs->setEnabled(1);
ui->labelEleEyeTriggerPrintDelay->setText(tr("触发延时(毫秒)"));
ui->labelEleEyeTriggerIntervalMs->setText(tr("重复间隔(毫秒)"));
@@ -406,7 +414,7 @@ void PrintSetting::on_checkEyeTriggerSynPrintEn_clicked(bool checked)
}
void PrintSetting::setTriggerUI(int triggerMode){
// ui->sb_printingDelay->setEnabled(triggerMode == PRINT_TRIGGER_TIME);
ui->sb_printingDelay->setEnabled(triggerMode == PRINT_TRIGGER_TIME);
ui->lb_printingDelay->setEnabled(triggerMode == PRINT_TRIGGER_TIME);
ui->radioButtonEleEyeEdgetTrigger->setChecked( triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE);
@@ -414,7 +422,6 @@ void PrintSetting::setTriggerUI(int triggerMode){
ui->spinBoxEleEyeTriggerIntervalMs->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE || triggerMode == PRINT_TRIGGER_TIME);
ui->labelEleEyeTriggerIntervalMs->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE);
ui->spinBoxEleEyeTriggerRepeatCnt->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE);
ui->cb_unlimited->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE);
ui->labelEleEyeTriggerRepeatCnt->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE);
ui->spinBoxEleEyeTriggerPrintDelay->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE || PRINT_TRIGGER_SYNCHRONIZER);
ui->labelEleEyeTriggerPrintDelay->setEnabled(triggerMode == PRINT_TRIGGER_ELEC_EYE_VOLTATE_LEVEL || triggerMode == PRINT_TRIGGER_ELEC_EYE_EDGE || PRINT_TRIGGER_SYNCHRONIZER);
@@ -638,6 +645,9 @@ void PrintSetting::on_eleEyeEdgetTriggerInner_clicked()
}else
sysPara->para.printTriggerMode = PRINT_TRIGGER_SYNCHRONIZER;
setTriggerUI(sysPara->para.printTriggerMode);
sysPara->para.eleEyeTriggerSynPrintEn = false;
on_checkEyeTriggerSynPrintEn_clicked(false);
}
void PrintSetting::setEnableEleEyeSetting(bool flag){
@@ -651,16 +661,19 @@ void PrintSetting::setEnableEleEyeSetting(bool flag){
ui->spinBoxEleMaskTime->setEnabled(flag);
ui->labelEleEyeTriggerRepeatCnt->setEnabled(flag);
ui->spinBoxEleEyeTriggerRepeatCnt->setEnabled(flag);
ui->cb_unlimited->setEnabled(flag);
ui->radioButtonEleEyeEdgetTrigger->setEnabled(flag);
ui->radioButtonEleEyeLevelTrigger->setEnabled(flag);
ui->cb_unlimited->setEnabled(flag);
if (!flag) ui->cb_unlimited->setChecked(false);
}
void PrintSetting::on_eleEyeEdgetTriggerExternal_clicked()
{
if (sysPara)
on_checkEyeTriggerSynPrintEn_clicked(sysPara->para.eleEyeTriggerSynPrintEn);
sysPara->para.eleEyeTriggerSynPrintEn = ui->radioButtonSynTriggerExternal->isChecked();
//电眼和同步器都选外部时,就是同步
on_checkEyeTriggerSynPrintEn_clicked(sysPara->para.eleEyeTriggerSynPrintEn);
setEnableEleEyeSetting(true);
}
@@ -674,7 +687,6 @@ void PrintSetting::setEnableSynTriggerSetting(bool flag){
ui->comboBoxSyncActType->setEnabled(flag);
ui->labelSynPrintMode->setEnabled(flag);
ui->comboBoxSynPrintMode->setEnabled(flag);
ui->cb_unlimited->setEnabled(flag);
}
void PrintSetting::on_radioButtonSynTriggerInner_clicked()
@@ -685,8 +697,11 @@ void PrintSetting::on_radioButtonSynTriggerInner_clicked()
sysPara->para.printTriggerMode = PRINT_TRIGGER_TIME;
setTriggerUI(sysPara->para.printTriggerMode);
}
if (sysPara)
on_checkEyeTriggerSynPrintEn_clicked(sysPara->para.eleEyeTriggerSynPrintEn);
if (sysPara) {
sysPara->para.eleEyeTriggerSynPrintEn = false;
on_checkEyeTriggerSynPrintEn_clicked(false);
}
}
@@ -696,8 +711,10 @@ void PrintSetting::on_radioButtonSynTriggerExternal_clicked()
if (sysPara)
sysPara->para.printTriggerMode = PRINT_TRIGGER_SYNCHRONIZER;
}
if (sysPara)
if (sysPara) {
sysPara->para.eleEyeTriggerSynPrintEn = ui->eleEyeEdgetTriggerExternal->isChecked();
on_checkEyeTriggerSynPrintEn_clicked(sysPara->para.eleEyeTriggerSynPrintEn);
}
setEnableSynTriggerSetting(true);
}