调整部分样式
This commit is contained in:
+118
-101
@@ -4,6 +4,7 @@
|
||||
//#include <QTextCursor>
|
||||
#include <QElapsedTimer>
|
||||
#include "VerBVersion.h"
|
||||
#include <QEvent>
|
||||
|
||||
#ifdef __RFID_CARD
|
||||
#define DETECT_WARNING_TIME 10 //Seconds
|
||||
@@ -29,12 +30,17 @@ InkJetPrinter::InkJetPrinter(QWidget* parent)
|
||||
init();
|
||||
|
||||
QThread::sleep(3);
|
||||
// qApp->installEventFilter(this);
|
||||
qApp->installEventFilter(this);
|
||||
|
||||
QString ARM_Version;
|
||||
ARM_Version.sprintf("%d.%d.%02d%s%s", UP_PRINTER_MAJOR_VER, UP_PRINTER_MINOR_VER,UP_PRINTER_RIVISION_VER,SUB_VERSION,SUB_RFID);
|
||||
ui.label_version->setText(QString("A%1/F%2.%3.%4").arg(ARM_Version).arg(sysPara->status.fpgaVersionNum >> 12)
|
||||
.arg((sysPara->status.fpgaVersionNum>>8) & 0x0f).arg(sysPara->status.fpgaVersionNum&0xff) );
|
||||
|
||||
|
||||
#ifdef ARCH_X86
|
||||
setFixedSize(800, 600);
|
||||
#endif
|
||||
}
|
||||
|
||||
InkJetPrinter::~InkJetPrinter()
|
||||
@@ -982,12 +988,12 @@ void InkJetPrinter::timerHandler(void){
|
||||
sysPara->devOp->setICReaderModeFlag = true;
|
||||
|
||||
// 使用RFID读写器软件设置,而不是这里
|
||||
// sysPara->devOp->setRFIDReaderWorkMode();
|
||||
sysPara->devOp->setRFIDReaderWorkMode();
|
||||
qDebug()<<"jd.addr: "<<m_MainInstruction->dlgInputAddr->jd.addr;
|
||||
LogInfo::setRunStatusText(QString("jd.addr:%1").arg(m_MainInstruction->dlgInputAddr->jd.addr));
|
||||
|
||||
// 使用RFID读写器软件设置,而不是这里
|
||||
// sysPara->devOp->setRFIDReaderKey(m_MainInstruction->dlgInputAddr->jd.addr,1);
|
||||
sysPara->devOp->setRFIDReaderKey(m_MainInstruction->dlgInputAddr->jd.addr,1);
|
||||
sysPara->devOp->setICReaderModeFlag = false;
|
||||
}
|
||||
if(pulse_300ms){
|
||||
@@ -1000,99 +1006,90 @@ void InkJetPrinter::timerHandler(void){
|
||||
if((sysPara->devOp->strRevdata.left(3) == QString::number(m_MainInstruction->dlgInputAddr->jd.addr).left(3))\
|
||||
|| sysPara->devOp->strRevdata.left(3) == "100")
|
||||
{
|
||||
if(sysPara->devOp->strRevdata.at(3) == 'A')
|
||||
{
|
||||
QMessageBox::StandardButton ret;
|
||||
ret = QMessageBox::warning(this, tr("警告"),
|
||||
tr("确认要刷墨水卡吗?"),
|
||||
QMessageBox::Ok | QMessageBox::Cancel);
|
||||
if (ret == QMessageBox::Ok){
|
||||
if(!sysPara->RFIDPara.needInkCard){
|
||||
msgtest->setText(tr("不需要刷墨水卡!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("不需要刷墨水卡!"));
|
||||
qDebug()<<"不需要刷墨水卡";
|
||||
if(sysPara->devOp->strRevdata.at(3) == 'A') {
|
||||
if(!sysPara->RFIDPara.needInkCard && false){
|
||||
msgtest->setText(tr("不需要刷墨水卡!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("不需要刷墨水卡!"));
|
||||
qDebug()<<"不需要刷墨水卡";
|
||||
}
|
||||
else if(sysPara->status.statWarn & WARN_STATUS_INK_WARN && false){
|
||||
msgtest->setText(tr("请先添加墨水再刷墨水卡!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("请先添加墨水再刷墨水卡!"));
|
||||
qDebug()<<"请先添加墨水再刷墨水卡";
|
||||
}
|
||||
else
|
||||
{
|
||||
auto ok = cardTouchConfirm(tr("确认要刷墨水卡吗?"), tr("确认要刷墨水卡吗? %1 秒后将自动确认"));
|
||||
if (!ok){
|
||||
LogInfo::setRunStatusText("The user has canceled the operation about marking the ink card.");
|
||||
qDebug() << "The user has canceled the operation about marking the ink card.";
|
||||
}
|
||||
else if(sysPara->status.statWarn & WARN_STATUS_INK_WARN){
|
||||
msgtest->setText(tr("请先添加墨水再刷墨水卡!"));
|
||||
else if(sysPara->devOp->RFIDmarkCardUsedAsync(0) == 1){
|
||||
sysPara->RFIDPara.needInkCard = false;
|
||||
sysPara->RFIDPara.inkCardTimeOut = false;
|
||||
sysPara->saveRFIDPara();
|
||||
msgtest->setText(tr("刷墨水卡成功!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("请先添加墨水再刷墨水卡!"));
|
||||
qDebug()<<"请先添加墨水再刷墨水卡";
|
||||
}
|
||||
else
|
||||
{
|
||||
if(sysPara->para.rfidCountDown>0)
|
||||
delayWithEventLoop(); //xx秒的倒计时
|
||||
if(sysPara->devOp->RFIDmarkCardUsedAsync() == 1){//把卡数据清零
|
||||
sysPara->RFIDPara.needInkCard = false;
|
||||
sysPara->RFIDPara.inkCardTimeOut = false;
|
||||
sysPara->saveRFIDPara();
|
||||
msgtest->setText(tr("刷墨水卡成功!"));
|
||||
msgtest->show();
|
||||
// m_MainWidget->setRunStatus(tr("刷墨水卡成功!")); hlp
|
||||
LogInfo::setRunStatusText(tr("刷墨水卡成功!"));
|
||||
qDebug()<<"刷墨水卡成功";
|
||||
sysPara->para.flagOfInkWarning = false;
|
||||
sysPara->para.inkWarnDate = 0;
|
||||
sysPara->para.inkWarnTime = 0;
|
||||
sysPara->saveParaToFile();
|
||||
}
|
||||
// m_MainWidget->setRunStatus(tr("刷墨水卡成功!")); hlp
|
||||
LogInfo::setRunStatusText(tr("刷墨水卡成功!"));
|
||||
qDebug()<<"刷墨水卡成功";
|
||||
sysPara->para.flagOfInkWarning = false;
|
||||
sysPara->para.inkWarnDate = 0;
|
||||
sysPara->para.inkWarnTime = 0;
|
||||
sysPara->saveParaToFile();
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(sysPara->devOp->strRevdata.at(3) == 'B')
|
||||
{
|
||||
QMessageBox::StandardButton ret;
|
||||
ret = QMessageBox::warning(this, tr("警告"),
|
||||
tr("确认要刷溶剂卡吗?"),
|
||||
QMessageBox::Ok | QMessageBox::Cancel);
|
||||
if (ret == QMessageBox::Ok){
|
||||
if(!sysPara->RFIDPara.needSolventCard){
|
||||
msgtest->setText(tr("不需要刷溶剂卡!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("不需要刷溶剂卡!"));
|
||||
qDebug()<<"不需要刷溶剂卡";
|
||||
|
||||
if(!sysPara->RFIDPara.needSolventCard && false){
|
||||
msgtest->setText(tr("不需要刷溶剂卡!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("不需要刷溶剂卡!"));
|
||||
qDebug()<<"不需要刷溶剂卡";
|
||||
}
|
||||
else if(sysPara->status.statWarn & WARN_STATUS_SOLV_WARN && false){
|
||||
msgtest->setText(tr("请先添加溶剂再刷溶剂卡!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("请先添加溶剂再刷溶剂卡!"));
|
||||
qDebug()<<"请先添加溶剂再刷溶剂卡";
|
||||
}
|
||||
else
|
||||
{
|
||||
auto ok = cardTouchConfirm(tr("确认要刷溶剂卡吗?"), tr("确认要刷溶剂卡吗? %1 秒后将自动确认"));
|
||||
if (!ok){
|
||||
LogInfo::setRunStatusText("The user has canceled the operation about marking the solvent card.");
|
||||
qDebug() << "The user has canceled the operation about marking the solvent card.";
|
||||
}
|
||||
else if(sysPara->status.statWarn & WARN_STATUS_SOLV_WARN){
|
||||
msgtest->setText(tr("请先添加溶剂再刷溶剂卡!"));
|
||||
else if(sysPara->devOp->RFIDmarkCardUsedAsync(1) == 1) {
|
||||
sysPara->RFIDPara.needSolventCard = false;
|
||||
sysPara->RFIDPara.solventCardTimeOut = false;
|
||||
sysPara->saveRFIDPara();
|
||||
msgtest->setText(tr("刷溶剂卡成功!"));
|
||||
msgtest->show();
|
||||
LogInfo::setRunStatusText(tr("请先添加溶剂再刷溶剂卡!"));
|
||||
qDebug()<<"请先添加溶剂再刷溶剂卡";
|
||||
}
|
||||
else
|
||||
{
|
||||
if(sysPara->para.rfidCountDown>0)
|
||||
delayWithEventLoop();
|
||||
//弹出一个xx秒的倒计时,再执行以下代码
|
||||
if(sysPara->devOp->RFIDmarkCardUsedAsync() == 1){//把卡数据清零
|
||||
sysPara->RFIDPara.needSolventCard = false;
|
||||
sysPara->RFIDPara.solventCardTimeOut = false;
|
||||
sysPara->saveRFIDPara();
|
||||
msgtest->setText(tr("刷溶剂卡成功!"));
|
||||
msgtest->show();
|
||||
// m_MainWidget->setRunStatus(tr("刷溶剂卡成功!")); hlp
|
||||
LogInfo::setRunStatusText(tr("刷溶剂卡成功!"));
|
||||
qDebug()<<"刷溶剂卡成功";
|
||||
sysPara->para.flagOfSolventWarning = false;
|
||||
sysPara->para.solventWarnDate = 0;
|
||||
sysPara->para.solventWarnTime = 0;
|
||||
sysPara->saveParaToFile();
|
||||
}
|
||||
// m_MainWidget->setRunStatus(tr("刷溶剂卡成功!")); hlp
|
||||
LogInfo::setRunStatusText(tr("刷溶剂卡成功!"));
|
||||
qDebug()<<"刷溶剂卡成功";
|
||||
sysPara->para.flagOfSolventWarning = false;
|
||||
sysPara->para.solventWarnDate = 0;
|
||||
sysPara->para.solventWarnTime = 0;
|
||||
sysPara->saveParaToFile();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else if(sysPara->devOp->strRevdata.at(3) == 'C')
|
||||
{
|
||||
QMessageBox::StandardButton ret;
|
||||
ret = QMessageBox::warning(this, tr("警告"),
|
||||
tr("确认要刷保养卡吗?"),
|
||||
QMessageBox::Ok | QMessageBox::Cancel);
|
||||
if (ret == QMessageBox::Ok){
|
||||
if(sysPara->para.rfidCountDown>0)
|
||||
delayWithEventLoop(); //xx秒的倒计时
|
||||
emit maintenanceShow();
|
||||
if(sysPara->devOp->RFIDmarkCardUsedAsync() == 1)//把卡数据清零
|
||||
{
|
||||
auto ok = cardTouchConfirm(tr("确认要刷保养卡吗?"), tr("确认要刷保养卡吗? %1 秒后将自动确认"));
|
||||
if (ok){
|
||||
auto r = sysPara->devOp->RFIDmarkCardUsedAsync(2);
|
||||
if(r == 1) {//把卡数据清零
|
||||
|
||||
emit maintenanceShow();
|
||||
|
||||
sysPara->RFIDPara.needMaintenance = false;
|
||||
sysPara->status.needMaintenanceRemind = false;
|
||||
QDate curDate = QDate::currentDate();
|
||||
@@ -1100,12 +1097,19 @@ void InkJetPrinter::timerHandler(void){
|
||||
QDate mtEndDate = curDate.addMonths(sysPara->RFIDPara.maintenanceInterval);
|
||||
sysPara->RFIDPara.maintenanceEndDate = mtEndDate.toString("yyMMdd").toInt();
|
||||
sysPara->saveRFIDPara();
|
||||
msgtest->setText(tr("刷保养卡成功!"));
|
||||
msgtest->show();
|
||||
// msgtest->setText(tr("刷保养卡成功!"));
|
||||
// msgtest->show();
|
||||
// m_MainWidget->setRunStatus(tr("刷保养卡成功!")); hlp
|
||||
LogInfo::setRunStatusText(tr("刷保养卡成功!"));
|
||||
qDebug()<<"刷保养卡成功";
|
||||
}
|
||||
else {
|
||||
LogInfo::setRunStatusText("Failed to mark maintenance card!");
|
||||
qDebug() << "Failed to mark maintenance card!";
|
||||
}
|
||||
}
|
||||
else {
|
||||
qDebug() << "用户取消了刷卡";
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -2791,25 +2795,38 @@ int InkJetPrinter::dateTimeElasped(int type,QString str){
|
||||
}
|
||||
}
|
||||
|
||||
void InkJetPrinter::delayWithEventLoop()
|
||||
bool InkJetPrinter::cardTouchConfirm(QString msgTxt, QString variableMsgTxt)
|
||||
{
|
||||
QMessageBox waitBox(this);
|
||||
waitBox.setWindowTitle(tr("请稍候"));
|
||||
waitBox.setText(tr("刷溶剂卡倒计时: %1 秒").arg(sysPara->para.rfidCountDown));
|
||||
waitBox.setStandardButtons(QMessageBox::NoButton);
|
||||
waitBox.show();
|
||||
QMessageBox box(QMessageBox::Warning, tr("警告"),
|
||||
msgTxt, QMessageBox::Ok | QMessageBox::Cancel,
|
||||
this, Qt::Dialog | Qt::Tool | Qt::FramelessWindowHint | Qt::BypassWindowManagerHint );
|
||||
|
||||
int countdown = sysPara->para.rfidCountDown;
|
||||
QTimer timer;
|
||||
QObject::connect(&timer, &QTimer::timeout, [&]() {
|
||||
countdown--;
|
||||
if (countdown > 0) {
|
||||
waitBox.setText(tr("刷溶剂卡倒计时: %1 秒").arg(countdown));
|
||||
int rfidCountDown = sysPara->para.rfidCountDown;
|
||||
QTimer msgTimer;
|
||||
QString boxTxt = variableMsgTxt;
|
||||
connect(&msgTimer, &QTimer::timeout, [this, &box, &rfidCountDown, boxTxt]() {
|
||||
box.setText(boxTxt.arg(rfidCountDown));
|
||||
box.update();
|
||||
rfidCountDown--;
|
||||
if(rfidCountDown == 0) {
|
||||
box.accept();
|
||||
}
|
||||
});
|
||||
timer.start(1000);
|
||||
int singleTime = sysPara->para.rfidCountDown*1000;
|
||||
QEventLoop loop;
|
||||
QTimer::singleShot(singleTime, &loop, &QEventLoop::quit); // ← 固定 3000ms
|
||||
loop.exec();
|
||||
|
||||
if(sysPara->para.rfidCountDown > 0) {
|
||||
box.setText(boxTxt.arg(sysPara->para.rfidCountDown));
|
||||
msgTimer.start(1000);
|
||||
}
|
||||
|
||||
// 为边框设置圆角和边框颜色
|
||||
box.setStyleSheet(R"(
|
||||
QDialog {
|
||||
border-radius: 5px;
|
||||
border: 2px solid #333333;
|
||||
}
|
||||
)");
|
||||
|
||||
box.exec();
|
||||
|
||||
return box.result() == QMessageBox::Ok || box.result() == QMessageBox::Accepted;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user