From b2aa706dfea78ad2e327fb5e414207af69d23d64 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期六, 13 九月 2025 11:33:04 +0800
Subject: [PATCH] 1.对话框显示工艺参数,可复制到剪贴板; 2.修复几处因按回车或ESC键导致页面被关闭的问题; 3.修复解释警告数据文本失败的问题; 4.更新警告文本,显示警告详细信息; 5.完善警告描述内容 ;
---
SourceCode/Bond/Servo/ServoDlg.cpp | 41 ++++++++++++++++++++++++++++++++++++-----
1 files changed, 36 insertions(+), 5 deletions(-)
diff --git a/SourceCode/Bond/Servo/ServoDlg.cpp b/SourceCode/Bond/Servo/ServoDlg.cpp
index 273c7c8..74f8607 100644
--- a/SourceCode/Bond/Servo/ServoDlg.cpp
+++ b/SourceCode/Bond/Servo/ServoDlg.cpp
@@ -94,6 +94,7 @@
m_pPanelAttributes = nullptr;
m_pPageGraph1 = nullptr;
m_pPageGraph2 = nullptr;
+ m_pPageGlassList = nullptr;
m_pPageAlarm = nullptr;
m_pPageLog = nullptr;
m_pPageTransferLog = nullptr;
@@ -216,6 +217,22 @@
m_pMyStatusbar->setBackgroundColor(STATUSBAR_BK_ALARM);
m_pMyStatusbar->setForegroundColor(RGB(0, 0, 0));
m_pMyStatusbar->setRunTimeText("启动失败.");
+ m_pTopToolbar->GetBtn(IDC_BUTTON_ALARM)->EnableWindow(TRUE);
+ KillTimer(TIMER_ID_UPDATE_RUMTIME);
+ }
+ else if (state == SERVO::MASTERSTATE::ATHERERROR) {
+ m_pTopToolbar->GetBtn(IDC_BUTTON_RUN)->EnableWindow(TRUE);
+ m_pTopToolbar->GetBtn(IDC_BUTTON_RUN_BATCH)->EnableWindow(TRUE);
+ m_pTopToolbar->GetBtn(IDC_BUTTON_RUN_CT)->EnableWindow(TRUE);
+ m_pTopToolbar->GetBtn(IDC_BUTTON_STOP)->EnableWindow(FALSE);
+ m_pMyStatusbar->setBackgroundColor(STATUSBAR_BK_ALARM);
+ m_pMyStatusbar->setForegroundColor(RGB(0, 0, 0));
+ m_pMyStatusbar->setRunTimeText(theApp.m_model.getMaster().getLastErrorText().c_str());
+ if (theApp.m_model.getMaster().getLastError() == ER_CODE_AOI_NG) {
+ AfxMessageBox(_T("AOI检测失败,请操作员介入解决问题!"));
+ }
+ m_pTopToolbar->GetBtn(IDC_BUTTON_ALARM)->EnableWindow(TRUE);
+ KillTimer(TIMER_ID_UPDATE_RUMTIME);
}
else if (state == SERVO::MASTERSTATE::RUNNING || state == SERVO::MASTERSTATE::RUNNING_CONTINUOUS_TRANSFER
|| state == SERVO::MASTERSTATE::RUNNING_BATCH) {
@@ -243,7 +260,7 @@
pEq2 = theApp.m_model.getMaster().getEquipment(pTask->getTarPosition());
if (pEq1 != nullptr && pEq2 != nullptr) {
CString strText;
- if (theApp.m_model.getMaster().getContinuousTransferCount() > 0) {
+ if (theApp.m_model.getMaster().getState() == SERVO::MASTERSTATE::RUNNING_CONTINUOUS_TRANSFER) {
strText.Format(_T("[%d]%s --> %s"),
theApp.m_model.getMaster().getContinuousTransferCount(),
pEq1->getName().c_str(), pEq2->getName().c_str());
@@ -365,6 +382,8 @@
m_pPageGraph1->Create(IDD_PAGE_GRAPH1, this);
m_pPageGraph2 = new CPageGraph2();
m_pPageGraph2->Create(IDD_PAGE_GRAPH2, this);
+ m_pPageGlassList = new CPageGlassList();
+ m_pPageGlassList->Create(IDD_PAGE_GLASS_LIST, this);
m_pPageRecipe = new CPageRecipe();
m_pPageRecipe->Create(IDD_PAGE_RECIPE, this);
m_pPageAlarm = new CPageAlarm();
@@ -379,10 +398,11 @@
m_pTab->SetItemMarginLeft(18);
m_pTab->AddItem("状态图", FALSE);
m_pTab->AddItem("连接图", TRUE);
+ m_pTab->AddItem("Glass", TRUE);
m_pTab->AddItem("配方", TRUE);
m_pTab->AddItem("报警", TRUE);
m_pTab->AddItem("日志", TRUE);
- m_pTab->AddItem("搬运", TRUE);
+ m_pTab->AddItem("搬运任务", TRUE);
m_pTab->SetCurSel(0);
m_pTab->SetBkgndColor(RGB(222, 222, 222));
ShowChildPage(0);
@@ -641,6 +661,7 @@
void CServoDlg::OnMenuHelpAbout()
{
+ theApp.m_model.getMaster().test();
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
@@ -733,6 +754,12 @@
m_pPageGraph2 = nullptr;
}
+ if (m_pPageGlassList != nullptr) {
+ m_pPageGlassList->DestroyWindow();
+ delete m_pPageGlassList;
+ m_pPageGlassList = nullptr;
+ }
+
if (m_pPageRecipe != nullptr) {
m_pPageRecipe->DestroyWindow();
delete m_pPageRecipe;
@@ -774,6 +801,7 @@
if (GetDlgItem(IDC_TAB1) == nullptr) return;
if (m_pPageGraph1 == nullptr) return;
if (m_pPageGraph2 == nullptr) return;
+ if (m_pPageGlassList == nullptr) return;
if (m_pPageRecipe == nullptr) return;
if (m_pPageAlarm == nullptr) return;
if (m_pPageLog == nullptr) return;
@@ -829,6 +857,7 @@
m_pPageGraph1->MoveWindow(x, y, rcClient.Width() - x, y2 - y);
m_pPageGraph2->MoveWindow(x, y, rcClient.Width() - x, y2 - y);
+ m_pPageGlassList->MoveWindow(x, y, rcClient.Width() - x, y2 - y);
m_pPageRecipe->MoveWindow(x, y, rcClient.Width() - x, y2 - y);
m_pPageAlarm->MoveWindow(x, y, rcClient.Width() - x, y2 - y);
m_pPageLog->MoveWindow(x, y, rcClient.Width() - x, y2 - y);
@@ -914,9 +943,11 @@
void CServoDlg::ShowChildPage(int index)
{
- ASSERT(0 <= index && index < 6);
- static CWnd* pPages[] = { m_pPageGraph1, m_pPageGraph2, m_pPageRecipe, m_pPageAlarm, m_pPageLog, m_pPageTransferLog };
- for (int i = 0; i < 6; i++) {
+ static CWnd* pPages[] = { m_pPageGraph1, m_pPageGraph2, m_pPageGlassList,
+ m_pPageRecipe, m_pPageAlarm, m_pPageLog, m_pPageTransferLog };
+ ASSERT(0 <= index && index < sizeof(pPages) / sizeof(CWnd*));
+
+ for (int i = 0; i < sizeof(pPages) / sizeof(CWnd*); i++) {
pPages[i]->ShowWindow(i == index ? SW_SHOW : SW_HIDE);
}
}
--
Gitblit v1.9.3