From 4ef35bf238fc6f7217e4b6de4aee37192ec503ec Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期三, 17 九月 2025 13:36:27 +0800
Subject: [PATCH] 1.自绘CListCtrl用于ProcessJob的Carrier选择
---
SourceCode/Bond/Servo/CCjPage2.cpp | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 54 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/CCjPage2.cpp b/SourceCode/Bond/Servo/CCjPage2.cpp
index 0f4aac9..b736ba4 100644
--- a/SourceCode/Bond/Servo/CCjPage2.cpp
+++ b/SourceCode/Bond/Servo/CCjPage2.cpp
@@ -48,6 +48,41 @@
CCjPageBase::OnInitDialog();
+ // 鑻ヤ綘鐨勮祫婧愰噷鏈変竴涓崰浣嶇殑 ListCtrl锛堟瘮濡� IDC_LIST1锛夛紝杩欓噷鍋氬瓙绫诲寲锛�
+ m_selector.SubclassDlgItem(IDC_LIST_SELECTOR, this);
+
+ // 鍒濆鍖栵細4 鍒� 脳 8 琛�
+ m_selector.InitGrid(4, 8);
+ m_selector.SetColumnWidths(100, 180);
+ m_selector.SetRowHeight(36);
+
+ // 璁剧疆鍒椾俊鎭�
+ m_selector.SetPortInfo(0, _T("Port 1"), _T("Carrier A"));
+ m_selector.SetPortInfo(1, _T("Port 2"), _T("Carrier B"));
+ m_selector.SetPortInfo(2, _T("Port 3"), _T("Carrier C"));
+ m_selector.SetPortInfo(3, _T("Port 4"), _T("Carrier D"));
+
+ // 璁剧疆閮ㄥ垎 Glass锛堟牳蹇僆D鍥哄畾锛�
+ m_selector.SetSlotGlass(0, 0, TRUE, _T("001"), CCarrierSlotSelector::MAT_G1);
+ m_selector.SetSlotGlass(0, 1, TRUE, _T("002"), CCarrierSlotSelector::MAT_G1);
+ m_selector.SetSlotGlass(0, 3, TRUE, _T("004"), CCarrierSlotSelector::MAT_G1);
+
+ m_selector.SetSlotGlass(1, 0, TRUE, _T("101"), CCarrierSlotSelector::MAT_G2);
+ m_selector.SetSlotGlass(1, 1, TRUE, _T("102"), CCarrierSlotSelector::MAT_G2);
+ m_selector.SetSlotGlass(1, 2, TRUE, _T("103"), CCarrierSlotSelector::MAT_G2);
+ m_selector.SetSlotGlass(1, 5, TRUE, _T("106"), CCarrierSlotSelector::MAT_G2);
+ m_selector.SetSlotGlass(1, 7, TRUE, _T("108"), CCarrierSlotSelector::MAT_G2);
+
+ m_selector.SetSlotGlass(2, 5, TRUE, _T("206"), CCarrierSlotSelector::MAT_G1);
+ m_selector.SetSlotGlass(2, 6, TRUE, _T("207"), CCarrierSlotSelector::MAT_G1);
+ m_selector.SetSlotGlass(2, 7, TRUE, _T("208"), CCarrierSlotSelector::MAT_G1);
+
+ m_selector.SetSlotGlass(3, 0, TRUE, _T("301"), CCarrierSlotSelector::MAT_G1);
+
+ // 閿佸畾 Port 1锛堢ず渚嬶級
+ m_selector.SetPortAllocated(0, TRUE, _T("ProcessJob 1"));
+
+
UpdatePjData();
@@ -87,6 +122,25 @@
GetDlgItemText(IDC_EDIT_PJ_ID, szBuffer, 256);
pProcessJob->setId(std::string(szBuffer));
+ // 鏇存柊閰嶆柟
+ CString strRecipe;
+ CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO_RECIPE);
+ int idx = pComboBox->GetCurSel();
+ if (idx >= 0) {
+ pComboBox->GetLBText(idx, strRecipe);
+#ifdef UNICODE
+ CT2A utf8Str(strRecipe, CP_UTF8);
+ std::string recipe(utf8Str);
+#else
+ std::string recipe(strRecipe.GetString());
+#endif
+
+ pProcessJob->setRecipe(SERVO::RecipeMethod::NoTuning, recipe);
+ }
+
+
+
+
ContentChanged(1);
}
--
Gitblit v1.9.3