#include "promptdialog.h" #include "ui_promptdialog.h" PromptDialog::PromptDialog(QWidget *parent) : QDialog(parent), ui(new Ui::PromptDialog) { ui->setupUi(this); setWindowFlags (Qt::Window | Qt::FramelessWindowHint); setWindowModality(Qt::ApplicationModal); setAttribute(Qt::WA_TranslucentBackground, true); connect(g_pMachine, SIGNAL(siMcInfoChange()), this, SLOT(slotMCInfoChange())); initDialog(); initControl(); } PromptDialog::~PromptDialog() { delete ui; } //初始化窗体 void PromptDialog::initDialog(int sel) { m_funType = sel; m_filePath.clear(); m_spindleAngle = 0;//主轴旋转角度值 m_area = 0; setTitleStr(""); setContentStr(""); setContentProcessStr(""); ui->frameProcess->hide(); ui->labelContentInfo->setText(""); ui->labeBreakHead->setText(""); ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameProcessBtn->hide(); ui->buttonOk->setEnabled(true); //蓝色 buttonStyle1 = "QPushButton{outline: none;color:rgb(10,10,10);background-color:rgb(0,151,226);border:0px solid rgb(0,0,0);border-style:inset;border-radius:5px;}"; //白色 buttonStyle2 = "QPushButton{outline: none;color:rgb(10,10,10);background-color:rgb(250,250,250);border:0px solid rgb(0,0,0);border-style:inset;border-radius:5px;}"; if (sel == BTN_OK_CANCEL)//确定、取消 { ui->frameTwo->show(); ui->frameThree->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->frameDetecBtn->hide(); ui->buttonOk->show(); ui->buttonCancel->show(); ui->buttonForward->hide();//隐藏正转按钮 ui->buttonReverse->hide();//隐藏反转按钮 ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); ui->buttonOk->move(m_btnOkPoint); ui->buttonCancel->move(m_btnCancelPoint); } else if (sel == BTN_OK)//确定 { ui->frameTwo->show(); ui->frameThree->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->frameDetecBtn->hide(); ui->buttonOk->show(); ui->buttonCancel->hide(); ui->buttonForward->hide();//隐藏正转按钮 ui->buttonReverse->hide();//隐藏反转按钮 ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); ui->buttonOk->move(m_btnCancelPoint); } else if (sel == BTN_R_R_S)//重命名、替换、跳过 { ui->frameTwo->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->frameDetecBtn->hide(); ui->frameThree->show(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); } else if (sel == BTN_RESTART)//重启 { ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameWarrantBtn->hide(); ui->frameDetecBtn->hide(); ui->frameProcessBtn->show(); ui->buttonRestart->show(); ui->buttonUpdataCancel->hide(); ui->buttonRestart->move(m_btnCancelPoint); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); } else if (sel == BTN_UCANCEL)//升级取消 { ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameWarrantBtn->hide(); ui->frameDetecBtn->hide(); ui->frameProcessBtn->show(); ui->buttonRestart->hide(); ui->buttonUpdataCancel->show(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); } else if (sel == BTN_WARRANT)//授权按钮 { ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcessBtn->hide(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWarrantBtn->show(); ui->frameWorkArea->hide(); } // 底线检测,面线检测 else if(sel == BTN_BOTTOM || sel == BTN_FACE) { ui->frameDetecBtn->show(); ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->frameProcess->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentProcess->hide(); ui->labelContentWarrant->hide(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); } else if(sel == BTN_NONE)//无按钮 { ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->frameProcess->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentProcess->hide(); ui->labelContentWarrant->hide(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); } else if(sel == BTN_P_NONE)//无按钮 { ui->frameTwo->hide(); ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentWarrant->hide(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameSpindleRotate->hide(); ui->frameWorkArea->hide(); } else if(sel == BTN_HMI_DECRYPT)//界面解密 { ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcess->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentWarrant->hide(); ui->frameSpindleRotate->hide(); ui->frameHMIDecrypt->show(); ui->frameChangePassword->hide(); ui->frameTwo->show(); ui->frameWorkArea->hide(); ui->buttonOk->show(); ui->buttonCancel->show(); ui->buttonForward->hide();//隐藏正转按钮 ui->buttonReverse->hide();//隐藏反转按钮 ui->buttonOk->move(m_btnOkPoint); ui->buttonCancel->move(m_btnCancelPoint); } else if(sel == BTN_CHANGE_PASSWORD)//修改一级密码 { ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcess->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentWarrant->hide(); ui->frameSpindleRotate->hide(); ui->frameHMIDecrypt->hide();//界面解密隐藏 ui->frameChangePassword->show(); ui->frameWorkArea->hide(); ui->frameTwo->show(); ui->buttonOk->show(); ui->buttonCancel->show(); ui->buttonForward->hide();//隐藏正转按钮 ui->buttonReverse->hide();//隐藏反转按钮 ui->buttonOk->move(m_btnOkPoint); ui->buttonCancel->move(m_btnCancelPoint); } else if(sel == BTN_SPINDLE_ROTATE)//主轴旋转角度 { ui->frameSpindleRotate->show(); ui->buttonSpindleAngleValue->setText("0.00"); ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcess->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentWarrant->hide(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameTwo->show(); ui->frameWorkArea->hide(); ui->buttonOk->show(); ui->buttonCancel->show(); ui->buttonForward->show();//显示正转按钮 ui->buttonReverse->show();//显示反转按钮 ui->buttonOk->move(m_btnOkPoint); ui->buttonCancel->move(m_btnCancelPoint); } else if(sel == BTN_WORK_AREA)//设置可工作区域 { ui->frameWorkArea->show(); ui->buttonX1->setText(tr("X +")); ui->buttonX2->setText(tr("X -")); ui->buttonY1->setText(tr("Y +")); ui->buttonY2->setText(tr("Y -")); ui->frameSpindleRotate->hide(); ui->frameThree->hide(); ui->frameDetecBtn->hide(); ui->frameProcess->hide(); ui->frameProcessBtn->hide(); ui->frameWarrantBtn->hide(); ui->labelContentInfo->hide(); ui->labeBreakHead->hide(); ui->labelContentWarrant->hide(); ui->frameHMIDecrypt->hide(); ui->frameChangePassword->hide(); ui->frameTwo->show(); ui->buttonOk->show(); ui->buttonCancel->show(); ui->buttonForward->hide();//隐藏正转按钮 ui->buttonReverse->hide();//隐藏反转按钮 ui->buttonOk->move(m_btnOkPoint); ui->buttonCancel->move(m_btnCancelPoint); } } //初始化窗体控件,包括位置、尺寸、样式 void PromptDialog::initControl() { //根据不同分辨率设置控件的位置和尺寸 switch (g_emResolut) { case resolution1910: initResolution1910(); break; case resolution1006: initResolution1006(); break; default: initResolution1910(); break; } initControlStyle();//初始化窗体控件样式 } //初始化窗体控件为1920x1080分辨率 void PromptDialog::initResolution1910() { double factoryX = 1.875; double factoryY = 1.8; //上状态栏 this->resize(1024*factoryX,600*factoryY); this->move((1920-this->width())/2,(1080-this->height())/2); ui->frameBack->setGeometry(0,0,1920,1080); ui->labelTitle->setGeometry(265*factoryX ,150*factoryY,400*1.875,56*factoryY);//(20,-4,400,56) ui->labelContent->setGeometry(291*factoryX ,194*factoryY,340*1.875,285*factoryY);//(46,40,340,285) ui->labelContentInfo->setGeometry(291*factoryX ,194*factoryY,350*1.875,285*factoryY);//(46,40,350,285) ui->labeBreakHead->setGeometry(40*factoryX,40*factoryY,380*factoryX,285*factoryY); ui->labelContentWarrant->setGeometry(302*factoryX,193*factoryY,300*factoryX,225*factoryY); ui->frameProcess->setGeometry(145*factoryX,150*factoryY,800*factoryX,280*factoryY);//(20,70,480,130) ui->labelContentProcess->setGeometry(150*factoryX,80*factoryY,398*factoryX,40*factoryY);//(10,10,398,40) ui->progressBar->setGeometry(150*factoryX,120*factoryY,446*factoryX,26*factoryY);//进度条(10,50,446,26) ui->frameTwo->setGeometry(245*factoryX,379*factoryY,900*factoryX,500*factoryY);//(0,225,500,51) ui->buttonForward->setGeometry(72*factoryX,0,96*factoryX,45*factoryY); ui->buttonReverse->setGeometry(178*factoryX,0,96*factoryX,45*factoryY); ui->buttonOk->setGeometry(284*factoryX,0,96*factoryX,45*factoryY);//(284,0,96,45) ui->buttonCancel->setGeometry(390*factoryX,-1*factoryY,96*factoryX,45*factoryY);//(390,-1,96,45) m_btnOkPoint.setX(284*factoryX);//ok按钮位置(284) m_btnOkPoint.setY(0); m_btnCancelPoint.setX(390*factoryX);//cancel按钮位置(390) m_btnCancelPoint.setY(1*factoryY); ui->frameProcessBtn->setGeometry(260*factoryX,385*factoryY,500*factoryX,51*factoryY);//传送文件中提示弹框中的X按钮 ui->buttonRestart->setGeometry(284*factoryX,0,96*factoryX,45*factoryY); ui->buttonUpdataCancel->setGeometry(390*factoryX,1*factoryY,96*factoryX,45*factoryY); ui->frameWarrantBtn->setGeometry(256*factoryX,388*factoryY,500*factoryX,51*factoryY);//授权 已修改 ui->buttonWarrant->setGeometry(284*factoryX,0,96*factoryX,45*factoryY); ui->buttonWarrantCancel->setGeometry(390*factoryX,1*factoryY,96*factoryX,45*factoryY); ui->frameWorkArea->setGeometry(40*factoryX,58*factoryY,440*factoryX,161*factoryY); ui->buttonX1->setGeometry(170*factoryX,60*factoryY,70*factoryX,38*factoryY); ui->buttonX2->setGeometry(10*factoryX,60*factoryY,70*factoryX,38*factoryY); ui->buttonY1->setGeometry(90*factoryX,10*factoryY,70*factoryX,38*factoryY);//y+ ui->buttonY2->setGeometry(90*factoryX,120*factoryY,70*factoryX,38*factoryY); //主轴角度旋转 ui->frameSpindleRotate->setGeometry(30*factoryX,78*factoryY,440*factoryX,161*factoryY); ui->labelSpindleAngle->setGeometry(0*factoryX,12*factoryY,120*factoryX,40*factoryY); ui->buttonSpindleAngleValue->setGeometry(125*factoryX,10*factoryY,78*factoryX,40*factoryY); ui->labelSpindleAngleUnit->setGeometry(214*factoryX,12*factoryY,91*factoryX,40*factoryY); //界面解密 ui->frameHMIDecrypt->setGeometry(40*factoryX,78*factoryY,440*factoryX,161*factoryY); ui->labelNetworkCardID->setGeometry(10*factoryX,12*factoryY,110*factoryX,40*factoryY); ui->labelNetworkCardIDValue->setGeometry(130*factoryX,12*factoryY,200*factoryX,40*factoryY); ui->labelHMIPassword->setGeometry(10*factoryX,52*factoryY,110*factoryX,40*factoryY); ui->buttonHMIPassword->setGeometry(130*factoryX,50*factoryY,200*factoryX,40*factoryY); ui->labelDecryptInfo->setGeometry(10*factoryX,92*factoryY,110*factoryX,40*factoryY); ui->labelDecryptInfoValue->setGeometry(130*factoryX,92*factoryY,200*factoryX,40*factoryY); //修改一级密码 ui->frameChangePassword->setGeometry(0,78*factoryY,440*factoryX,161*factoryY); ui->labelNewPassword->setGeometry(0,0,140*factoryX,40*factoryY); ui->buttonNewPassword->setGeometry(180*factoryX,0,200*factoryX,40*factoryY); ui->labelConfirmPassword->setGeometry(0,52*factoryY,140*factoryX,40*factoryY); ui->buttonConfirmPassword->setGeometry(180*factoryX,52*factoryY,200*factoryX,40*factoryY); ui->frameThree->setGeometry(280*factoryX,390*factoryY,500*factoryX,51*factoryY); ui->buttonRename->setGeometry(187*factoryX,0,96*factoryX,45*factoryY); ui->buttonReplace->setGeometry(289*factoryX,0,96*factoryX,45*factoryY); ui->buttonSkip->setGeometry(390*factoryX,1*factoryY,96*factoryX,45*factoryY); ui->frameDetecBtn->setGeometry(280*factoryX,390*factoryY,500*factoryX,51*factoryY); ui->buttonDetectBegin->setGeometry(187*factoryX,0,96*factoryX,45*factoryY); ui->buttonDetectEnd->setGeometry(284*factoryX,0,96*factoryX,45*factoryY); ui->buttonDetectClose->setGeometry(390*factoryX,1*factoryY,96*factoryX,45*factoryY); } //初始化窗体控件为1024x600分辨率 void PromptDialog::initResolution1006() { //上状态栏 this->resize(1024,600);//(508,304); this->move((1024-this->width())/2,(600-this->height())/2); ui->frameBack->setGeometry(0,0,1024,600);//(0,0,508,304) ui->labelTitle->setGeometry(265,150,400,56);//(20,-4,400,56) ui->labelContent->setGeometry(291,194,340,285);//(46,40,340,285) ui->labelContentInfo->setGeometry(291,194,350,285);//(46,40,350,285) ui->labeBreakHead->setGeometry(40,40,380,285); ui->labelContentWarrant->setGeometry(302,193,300,225); ui->frameProcess->setGeometry(145,150,800,280);//(20,70,480,130) ui->labelContentProcess->setGeometry(150,80,398,40);//(10,10,398,40) ui->progressBar->setGeometry(150,120,446,26);//进度条(10,50,446,26) ui->frameTwo->setGeometry(245,379,500,51);//(0,225,500,51) ui->buttonForward->setGeometry(72,0,96,45); ui->buttonReverse->setGeometry(178,0,96,45); ui->buttonOk->setGeometry(284,0,96,45);//(284,0,96,45) ui->buttonCancel->setGeometry(390,-1,96,45);//(390,-1,96,45) m_btnOkPoint.setX(284);//ok按钮位置(284) m_btnOkPoint.setY(0); m_btnCancelPoint.setX(390);//cancel按钮位置(390) m_btnCancelPoint.setY(1); ui->frameProcessBtn->setGeometry(260,385,500,51);//(0,235,500,51)传送文件中提示弹框中的X按钮 ui->buttonRestart->setGeometry(284,0,96,45);//(284,0,96,45) ui->buttonUpdataCancel->setGeometry(390,1,96,45);//(390,1,96,45) ui->frameWarrantBtn->setGeometry(256,388,500,51);//授权 已修改 ui->buttonWarrant->setGeometry(284,0,96,45); ui->buttonWarrantCancel->setGeometry(390,1,96,45); ui->frameWorkArea->setGeometry(40,58,440,161); ui->buttonX1->setGeometry(170,60,70,38); ui->buttonX2->setGeometry(10,60,70,38); ui->buttonY1->setGeometry(90,10,70,38);//y+ ui->buttonY2->setGeometry(90,120,70,38); //主轴角度旋转 ui->frameSpindleRotate->setGeometry(30,78,440,161); ui->labelSpindleAngle->setGeometry(0,12,120,40); ui->buttonSpindleAngleValue->setGeometry(125,10,78,40); ui->labelSpindleAngleUnit->setGeometry(214,12,91,40); //界面解密 ui->frameHMIDecrypt->setGeometry(40,78,440,161); ui->labelNetworkCardID->setGeometry(10,12,110,40); ui->labelNetworkCardIDValue->setGeometry(130,12,200,40); ui->labelHMIPassword->setGeometry(10,52,110,40); ui->buttonHMIPassword->setGeometry(130,50,200,40); ui->labelDecryptInfo->setGeometry(10,92,110,40); ui->labelDecryptInfoValue->setGeometry(130,92,200,40); //修改一级密码 ui->frameChangePassword->setGeometry(0,78,440,161); ui->labelNewPassword->setGeometry(0,0,140,40); ui->buttonNewPassword->setGeometry(180,0,200,40); ui->labelConfirmPassword->setGeometry(0,52,140,40); ui->buttonConfirmPassword->setGeometry(180,52,200,40); ui->frameThree->setGeometry(280,390,500,51); ui->buttonRename->setGeometry(187,0,96,45); ui->buttonReplace->setGeometry(289,0,96,45); ui->buttonSkip->setGeometry(390,1,96,45); ui->frameDetecBtn->setGeometry(280,390,500,51); ui->buttonDetectBegin->setGeometry(187,0,96,45); ui->buttonDetectEnd->setGeometry(284,0,96,45); ui->buttonDetectClose->setGeometry(390,1,96,45); } //初始化窗体控件样式 void PromptDialog::initControlStyle() { SetControlStyle setControlStyle; setControlStyle.setUiName(this->objectName()); //设置控件图标 //背景图 this->setStyleSheet(LABELWHITESTYLE); ui->frameBack->setStyleSheet(TRANSPARENTSTYLE); ui->frameBack->setStyleSheet(setControlStyle.getStyleSheet(this->objectName())); ui->labelTitle->setStyleSheet(LABELBLACKSTYLE); ui->labelTitle->setFont(fontNormal_1); ui->labelTitle->setAlignment(Qt::AlignLeft); ui->labelTitle->setAlignment(Qt::AlignVCenter); ui->frameProcess->setStyleSheet(TRANSPARENTSTYLE); ui->progressBar->setFont(fontNormal_1); ui->labelContent->setStyleSheet(LABELWHITESTYLE); ui->labelContent->setFont(fontNormal_1); ui->labelContent->setAlignment(Qt::AlignLeft); ui->labelContent->setAlignment(Qt::AlignVCenter); ui->labeBreakHead->setStyleSheet(LABELREDSTYLE); // 断线机头 红色 字体加大 -rq ui->labeBreakHead->setFont(fontNormal_10); ui->labeBreakHead->setAlignment(Qt::AlignLeft); ui->labeBreakHead->setAlignment(Qt::AlignVCenter); ui->labelContentInfo->setStyleSheet(LABELWHITESTYLE); ui->labelContentInfo->setFont(fontNormal_1); ui->labelContentInfo->setAlignment(Qt::AlignLeft); ui->labelContentInfo->setAlignment(Qt::AlignVCenter); ui->labelContentProcess->setStyleSheet(LABELNAVYBLUESTYLE); ui->labelContentProcess->setFont(fontNormal_1); ui->labelContentProcess->setAlignment(Qt::AlignLeft); ui->labelContentProcess->setAlignment(Qt::AlignVCenter); ui->labelContentWarrant->setStyleSheet(LABELWHITESTYLE); ui->labelContentWarrant->setFont(fontNormal_1); ui->labelContentWarrant->setAlignment(Qt::AlignLeft); ui->labelContentWarrant->setAlignment(Qt::AlignVCenter); ui->frameTwo->setStyleSheet(TRANSPARENTSTYLE); ui->buttonOk->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonOk->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonOk->objectName()+"_1")); ui->buttonCancel->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonCancel->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonCancel->objectName()+"_1")); ui->buttonForward->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonForward->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonForward->objectName())); ui->buttonReverse->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonReverse->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonReverse->objectName())); ui->frameThree->setStyleSheet(TRANSPARENTSTYLE); ui->buttonRename->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonReplace->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonSkip->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonRename->setTopImage(setControlStyle.getTopStyleSheet(ui->buttonRename->objectName())); ui->buttonReplace->setTopImage(setControlStyle.getTopStyleSheet(ui->buttonReplace->objectName())); ui->buttonSkip->setTopImage(setControlStyle.getTopStyleSheet(ui->buttonSkip->objectName())); ui->frameDetecBtn->setStyleSheet(TRANSPARENTSTYLE); ui->buttonDetectBegin->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonDetectBegin->setTopImage(setControlStyle.getTopStyleSheet(ui->buttonDetectBegin->objectName())); ui->buttonDetectEnd->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonDetectEnd->setTopImage(setControlStyle.getTopStyleSheet(ui->buttonDetectEnd->objectName())); ui->buttonDetectClose->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonDetectClose->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonCancel->objectName()+"_1")); ui->frameProcessBtn->setStyleSheet(TRANSPARENTSTYLE); ui->buttonRestart->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonRestart->setTopImage(setControlStyle.getTopStyleSheet(ui->buttonRestart->objectName())); ui->buttonUpdataCancel->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonUpdataCancel->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonCancel->objectName()+"_1")); //设置可工作区域 ui->frameWorkArea->setStyleSheet(TRANSPARENTSTYLE); ui->buttonX1->setFont(fontNormal_1); ui->buttonX2->setFont(fontNormal_1); ui->buttonY1->setFont(fontNormal_1); ui->buttonY2->setFont(fontNormal_1); //主轴角度旋转 ui->frameSpindleRotate->setStyleSheet(TRANSPARENTSTYLE); ui->labelSpindleAngle->setStyleSheet(LABELWHITESTYLE); ui->labelSpindleAngle->setFont(fontNormal_1); ui->labelSpindleAngleUnit->setStyleSheet(LABELWHITESTYLE); ui->labelSpindleAngleUnit->setFont(fontNormal_1); ui->buttonSpindleAngleValue->setFont(fontNormal_1); //界面解密 ui->frameHMIDecrypt->setStyleSheet(TRANSPARENTSTYLE); ui->labelNetworkCardID->setStyleSheet(LABELWHITESTYLE); ui->labelNetworkCardID->setFont(fontNormal_1); ui->labelNetworkCardIDValue->setStyleSheet(LABELWHITESTYLE); ui->labelNetworkCardIDValue->setFont(fontNormal_1); ui->labelHMIPassword->setStyleSheet(LABELWHITESTYLE); ui->labelHMIPassword->setFont(fontNormal_1); ui->buttonHMIPassword->setFont(fontNormal_1); ui->labelDecryptInfo->setStyleSheet(LABELWHITESTYLE); ui->labelDecryptInfo->setFont(fontNormal_1); ui->labelDecryptInfoValue->setStyleSheet(LABELWHITESTYLE); ui->labelDecryptInfoValue->setFont(fontNormal_1); //修改一级密码 ui->frameChangePassword->setStyleSheet(TRANSPARENTSTYLE); ui->labelNewPassword->setStyleSheet(LABELWHITESTYLE); ui->labelNewPassword->setFont(fontNormal_1); ui->labelConfirmPassword->setStyleSheet(LABELWHITESTYLE); ui->labelConfirmPassword->setFont(fontNormal_1); ui->buttonNewPassword->setFont(fontNormal_1); ui->buttonConfirmPassword->setFont(fontNormal_1); ui->frameWarrantBtn->setStyleSheet(TRANSPARENTSTYLE); ui->buttonWarrant->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonWarrant->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonOk->objectName()+"_1")); ui->buttonWarrantCancel->setBottomImage(setControlStyle.getSharedBottomStyleSheet("frameBtn")); ui->buttonWarrantCancel->setTopImage(setControlStyle.getSharedTopStyleSheet(ui->buttonCancel->objectName()+"_1")); } //设置标题 void PromptDialog::setTitleStr(QString str) { ui->labelTitle->setText(str); } //设置断线机头字体颜色 void PromptDialog::setStrColor(QString str) { ui->frameProcess->hide(); ui->labelContentInfo->setText(""); ui->labelContentInfo->hide(); ui->labelContentWarrant->setText(""); ui->labelContentWarrant->hide(); ui->labelContent->setText(""); ui->labelContent->hide(); ui->labeBreakHead->setText(str); ui->labeBreakHead->show(); } //设置显示内容 void PromptDialog::setContentStr(QString str) { ui->frameProcess->hide(); ui->labelContentInfo->setText(""); ui->labelContentInfo->hide(); ui->labeBreakHead->setText("");//断线机头显示 ui->labeBreakHead->hide(); ui->labelContentWarrant->setText(""); ui->labelContentWarrant->hide(); ui->labelContent->setText(str); ui->labelContent->show(); } void PromptDialog::setContentProcessStr(QString str) { ui->frameProcess->show(); ui->labelContentInfo->setText(""); ui->labelContentInfo->hide(); ui->labeBreakHead->setText("");//断线机头显示 ui->labeBreakHead->hide(); ui->labelContent->setText(""); ui->labelContent->hide(); ui->labelContentWarrant->setText(""); ui->labelContentWarrant->hide(); ui->labelContentProcess->show(); ui->labelContentProcess->setText(str); } void PromptDialog::setContentInfoShow() { ui->labelContent->hide(); ui->labeBreakHead->hide(); ui->frameProcess->hide(); ui->labelContentWarrant->hide(); ui->labelContentInfo->show(); ui->labelContentInfo->raise(); } void PromptDialog::setContentWarrantShow() { ui->labelContent->hide(); ui->labeBreakHead->hide(); ui->frameProcess->hide(); ui->labelContentInfo->hide(); ui->labelContentWarrant->show(); } void PromptDialog::setContentHMIDecryptShow(QString id) { //将id中的冒号去掉 QStringList strlist = id.split(":", QString::SkipEmptyParts); QString nId; nId.clear(); for(int i = 0; i < strlist.size(); i++) { nId += strlist[i]; } ui->labelNetworkCardIDValue->setText(nId); ui->buttonHMIPassword->setText(""); QDir apppath(qApp->applicationDirPath()); QString HMIDecryptConfigfile; HMIDecryptConfigfile = apppath.path() + apppath.separator() + "HMIDecryptConfig.ini"; QSettings iniSetting(HMIDecryptConfigfile, QSettings::IniFormat); int decryptFlag = iniSetting.value("HMIDecrypt/ifdecrypt").toInt(); QFile iniFile(HMIDecryptConfigfile); if(decryptFlag != 0 || !iniFile.exists())//等于1或者配置文件不存在 { ui->labelDecryptInfoValue->setText("HMI decrypted");//界面已解密 } else { ui->labelDecryptInfoValue->setText("HMI unresolved");//界面未解密 } ui->buttonOk->setEnabled(false); } void PromptDialog::setContentChangePasswordShow()//修改一级用户密码内容显示 { ui->buttonNewPassword->setText(""); ui->buttonConfirmPassword->setText(""); ui->buttonOk->setEnabled(false); } void PromptDialog::setValue(int progress) { ui->progressBar->setValue(progress); } void PromptDialog::setButtonUCancelStr(QString str) { ui->buttonUpdataCancel->setText(str); } void PromptDialog::setRange(int minimum, int maximum) { ui->progressBar->setRange(minimum,maximum); } QString PromptDialog::getNetworkCardID() { return ui->labelNetworkCardIDValue->text(); } QString PromptDialog::getInputPassword() { return ui->buttonHMIPassword->text(); } void PromptDialog::slotMCInfoChange() { QString strInfo; MCInfo info; char softwareVerStr[32+1]; char softwareTimeStr[32+1]; info = g_pMachine->getMcInfo(); memcpy(softwareVerStr, info.softwareVerStr, 32); memcpy(softwareTimeStr, info.buildInfoStr, 32); softwareVerStr[32] = 0; softwareTimeStr[32] = 0; QString strBoardVer; strBoardVer.sprintf("%s", softwareVerStr); strInfo += tr("Board") + " " + strBoardVer + "\n"; QString softwareBulid; softwareBulid.sprintf("%s", softwareTimeStr); QString verInfo = "\n" + strInfo + "\r\n" + tr("Build Time:") + softwareBulid.right(softwareBulid.size() - 6);//编译时间: ui->labelContentInfo->setText(verInfo); //连接多块主板也是从g_pMachine(第一块)获取软件授权信息 MCStatus mcStatus; mcStatus = g_pMachine->getMcStatus(); MCInfo infoID; infoID = g_pMachine->getMcInfo(); QString IDStr(infoID.boardId); if(IDStr.indexOf(":") != -1) { QStringList list = IDStr.split(":"); IDStr = list.at(1); } QString passwordStr(infoID.installment); if(passwordStr.indexOf(":") != -1) { QStringList list = passwordStr.split(":"); passwordStr = list.at(1); } int time = mcStatus.workableTimer;//只在上电的时候读取 QString timeStr; if( time > TIMELIMITMIN && time < TIMELIMITMAX) { timeStr = (tr("Unlimited time")); // 无时间限制 } if(time <= 0) { timeStr = (tr("Time has run out")); // 时间已用完 } if(time > 0 && time < TIMELIMITMIN) { QString strDay; QString strHour; QString strSec; strDay = QString::number(time/(60 *24) , 10); strHour = QString::number((time%(60 *24))/60 , 10) ; strSec = QString::number(time%60 , 10); timeStr = strDay + " " + tr("Day") + " " + strHour + " " + tr("Hour") + " " + strSec + " " + tr("Minutes") ; // 天 小时 分钟 } QString strBoardInfo; strBoardInfo = QString(tr("ID: %1\n")).arg(IDStr); strBoardInfo += QString(tr("Password: %1\n")).arg(passwordStr); strBoardInfo += QString(tr("Time: %1")).arg(timeStr); ui->labelContentWarrant->setText(strBoardInfo); } void PromptDialog::on_buttonOk_clicked() { if(m_funType == BTN_SPINDLE_ROTATE) { emit siSpindleRotate(m_spindleAngle); } else { done(1); } } void PromptDialog::on_buttonCancel_clicked() { done(0); } void PromptDialog::on_buttonRename_clicked() { done(1); } void PromptDialog::on_buttonReplace_clicked() { done(2); } void PromptDialog::on_buttonSkip_clicked() { done(0); } //重启 void PromptDialog::on_buttonRestart_clicked() { #ifdef Q_OS_WIN qApp->exit(); #endif #ifdef Q_OS_LINUX system("reboot"); #endif } //升级中断 void PromptDialog::on_buttonUpdataCancel_clicked() { emit(siUpdataCancel()); done(0); } void PromptDialog::on_buttonWarrant_clicked() { //输入框 WordsInputDialog wordInputDlg; wordInputDlg.clean(); wordInputDlg.setTitleStr(tr("Warrant")); wordInputDlg.setOldWordsStr(""); if(wordInputDlg.exec() == 1) { QString textStr = wordInputDlg.getInputStr(); //连接多块主板也是从g_pMachine(第一块)获取软件授权信息,所以解锁也是通过第一块主板 g_pMachine->setMacKey(( unsigned char * ) textStr.toLatin1().data() ,textStr.toLatin1().size()); done(1); } } void PromptDialog::on_buttonWarrantCancel_clicked() { done(0); } //开始检测 void PromptDialog::on_buttonDetectBegin_clicked() { if(m_funType == BTN_BOTTOM)//等于底线检测 { return; } if(m_funType == BTN_FACE)//等于面线检测 { return; } } //停止检测 void PromptDialog::on_buttonDetectEnd_clicked() { if(g_pMachine!= NULL) { g_pMachine->exitDetectTest(); } } //关闭检测窗体 void PromptDialog::on_buttonDetectClose_clicked() { if(g_pMachine != NULL) { g_pMachine->exitDetectTest(); } done(0); } //界面解密ID号输入按钮 void PromptDialog::on_buttonHMIPassword_clicked() { //输入框 WordsInputDialog wordInputDlg; wordInputDlg.clean(); wordInputDlg.setTitleStr(tr("HMI decrypt")); wordInputDlg.setOldWordsStr(""); if(wordInputDlg.exec() == 1) { QString textStr = wordInputDlg.getInputStr(); ui->buttonHMIPassword->setText(textStr); if(textStr.length() > 0) { ui->buttonOk->setEnabled(true); } } } void PromptDialog::on_buttonSpindleAngleValue_clicked() { QTextCodec *cod = QTextCodec::codecForLocale(); int rslt; NumerInputDialog ndlg(this); ndlg.setTitleStr(tr("Spindle angle rotation"));//主轴角度旋转 ndlg.setUnitStr(cod->toUnicode("°")); ndlg.setValueAndRange(ui->buttonSpindleAngleValue->text().toInt()*100, 0, 36000, 2); rslt = ndlg.exec(); if (rslt == 1)//输入弹窗点击了确认 { s32 val = ndlg.getValue(); m_spindleAngle = val; float angle = m_spindleAngle*0.01; QString angleStr; angleStr.sprintf("%.2f",angle); ui->buttonSpindleAngleValue->setText(angleStr); } } //修改一级密码:新密码输入按钮 void PromptDialog::on_buttonNewPassword_clicked() { //密码输入框 PassWordDialog passWordDlg; passWordDlg.setTitleStr(tr("New Password input"));//设置新密码输入的标题 if(passWordDlg.exec() == 1)//确认 { m_newPassword = passWordDlg.getInputStr();//获取输入框里的密码 QString showStr(""); for (int var = 0; var < m_newPassword.size(); var++) { showStr = showStr + "*"; } ui->buttonNewPassword->setText(showStr);//新密码框里显示获取的密码 } } //修改一级密码:确认新密码输入按钮 void PromptDialog::on_buttonConfirmPassword_clicked() { //密码输入框 PassWordDialog passWordDlg; passWordDlg.setTitleStr(tr("Confirm Password input"));//设置确认密码输入的标题 if(passWordDlg.exec() == 1)//确认 { m_confirmPassword = passWordDlg.getInputStr();//获取输入框里的密码 QString showStr(""); for (int var = 0; var < m_confirmPassword.size(); var++) { showStr = showStr + "*"; } ui->buttonConfirmPassword->setText(showStr);//确认密码框里显示获取的密码 if(m_confirmPassword.length() > 0 ) { ui->buttonOk->setEnabled(true); } } } //主轴正转 void PromptDialog::on_buttonForward_pressed() { emit siSpindleAction(MT_MOVE_DIR_POSI); } //主轴正转停止 void PromptDialog::on_buttonForward_released() { emit siSpindleAction(MT_MOVE_DIR_STOP); } //主轴反转 void PromptDialog::on_buttonReverse_pressed() { emit siSpindleAction(MT_MOVE_DIR_NEGA); } //主轴反转停止 void PromptDialog::on_buttonReverse_released() { emit siSpindleAction(MT_MOVE_DIR_STOP); } void PromptDialog::on_buttonX1_pressed() { if(g_pMachine != NULL) { g_pMachine->manualAction(XY_MOVE_RIGHT, 2);//速度等级默认是2 } } void PromptDialog::on_buttonX1_released() { if(g_pMachine != NULL) { g_pMachine->motoMove(XY_MOVE_RIGHT, MT_MOVE_DIR_STOP, 0); } m_area = 2; } void PromptDialog::on_buttonX2_pressed() { if(g_pMachine != NULL) { g_pMachine->manualAction(XY_MOVE_LEFT, 2); } } void PromptDialog::on_buttonX2_released() { if(g_pMachine != NULL) { g_pMachine->motoMove(XY_MOVE_LEFT, MT_MOVE_DIR_STOP, 0); } m_area = 1; } void PromptDialog::on_buttonY1_pressed() { if(g_pMachine != NULL) { g_pMachine->manualAction(XY_MOVE_FRONT, 2); } } //Y+ void PromptDialog::on_buttonY1_released() { if(g_pMachine != NULL) { g_pMachine->motoMove(XY_MOVE_FRONT, MT_MOVE_DIR_STOP, 0); } m_area = 4; } void PromptDialog::on_buttonY2_pressed() { if(g_pMachine != NULL) { g_pMachine->manualAction(XY_MOVE_BACK, 2); } } //Y- void PromptDialog::on_buttonY2_released() { if(g_pMachine != NULL) { g_pMachine->motoMove(XY_MOVE_BACK, MT_MOVE_DIR_STOP, 0); } m_area = 3; }