瀏覽代碼

1、ribbon.mfcribbon-ms控件id必须要与resource.h里的一致,否则创建控件对象为NULL;
2、添加电视机串口下拉框;

scbc.sat2 5 年之前
父節點
當前提交
c2cb9a21d8

+ 3 - 0
SATHelper/SATHelper/DeviceView.cpp

@@ -162,6 +162,9 @@ void CDeviceView::ReadRsRunCfg(RsRunCfg& rscfg)
 	GetPrivateProfileString(_T("COMM"), _T("tg39_port"), NULL, szValue, MAX_PATH, m_szRsCfgPath);
 	rscfg.tg39_port = szValue;
 
+	GetPrivateProfileString(_T("COMM"), _T("serial_communicator_port"), NULL, szValue, MAX_PATH, m_szRsCfgPath);
+	rscfg.tv_port = szValue;
+
 	GetPrivateProfileString(_T("COMM"), _T("sat_home"), NULL, szValue, MAX_PATH, m_szRsCfgPath);
 	rscfg.sat_home = szValue;
 

+ 1 - 0
SATHelper/SATHelper/DeviceView.h

@@ -59,6 +59,7 @@ public:
 		std::string full_cut;	// 是否全步骤截图;('True/False')
 		//....
 		std::string tg39_port;
+		std::string tv_port;
 		std::string sat_home;
 		std::string sat_result_dir;
 		std::string chroma22293;

+ 35 - 0
SATHelper/SATHelper/MainFrm.cpp

@@ -86,6 +86,8 @@ BEGIN_MESSAGE_MAP(CMainFrame, CMDIFrameWndEx)
 	ON_COMMAND(ID_CHECK2_22293, &CMainFrame::OnCheck2_22293)
 	ON_UPDATE_COMMAND_UI(ID_CHECK2_22293, &CMainFrame::OnUpdateCheck2_22293)
 	//////////////////////////////////////////////////////////////////////////
+	ON_COMMAND(ID_COMBO_TVPORT, &CMainFrame::OnCombo2Tv)
+	ON_UPDATE_COMMAND_UI(ID_COMBO_TVPORT, &CMainFrame::OnUpdateCombo2Tv)
 END_MESSAGE_MAP()
 
 // CMainFrame 构造/析构
@@ -833,6 +835,9 @@ void CMainFrame::ReadRsRunCfg(RsRunCfg& rscfg)
 	GetPrivateProfileString(_T("COMM"), _T("tg39_port"), NULL, szValue, MAX_PATH, m_szRsCfgPath);
 	rscfg.tg39_port = szValue;
 
+	GetPrivateProfileString(_T("COMM"), _T("serial_communicator_port"), NULL, szValue, MAX_PATH, m_szRsCfgPath);
+	rscfg.tv_port = szValue;
+
 	GetPrivateProfileString(_T("COMM"), _T("sat_home"), NULL, szValue, MAX_PATH, m_szRsCfgPath);
 	rscfg.sat_home = szValue;
 
@@ -1028,6 +1033,7 @@ void CMainFrame::InitCombobox_port()
 	ASSERT_VALID(pRibbon);
 	CMFCRibbonComboBox* pCommbox1 = DYNAMIC_DOWNCAST(CMFCRibbonComboBox, pRibbon->FindByID(ID_COMBO1_22293));
 	CMFCRibbonComboBox* pCommbox2 = DYNAMIC_DOWNCAST(CMFCRibbonComboBox, pRibbon->FindByID(ID_COMBO2_22293));
+	CMFCRibbonComboBox* pCommboxTV = DYNAMIC_DOWNCAST(CMFCRibbonComboBox, pRibbon->FindByID(ID_COMBO_TVPORT));
 	for (std::vector<std::string>::iterator it = m_vtCOM.begin(); it != m_vtCOM.end(); it++)
 	{
 		if (!IsPortInserted(pCommbox1, it->c_str()))
@@ -1035,12 +1041,17 @@ void CMainFrame::InitCombobox_port()
 
 		if (!IsPortInserted(pCommbox2, it->c_str()))
 			pCommbox2->AddItem(it->c_str());
+
+		if (!IsPortInserted(pCommboxTV, it->c_str()))
+			pCommboxTV->AddItem(it->c_str());
 	}
 
 	if (m_rscfg.chroma1.size())
 		pCommbox1->SelectItem(m_rscfg.chroma1.c_str());
 	if (m_rscfg.chroma2.size())
 		pCommbox2->SelectItem(m_rscfg.chroma2.c_str());
+	if (m_rscfg.tv_port.size())
+		pCommboxTV->SelectItem(m_rscfg.tv_port.c_str());
 
 }
 
@@ -1514,3 +1525,27 @@ void CMainFrame::OnUpdateCheck2_22293(CCmdUI* pCmdUI)
 	else
 		pCmdUI->SetCheck(FALSE);
 }
+
+
+void CMainFrame::OnCombo2Tv()
+{
+	// TODO: 在此添加命令处理程序代码
+	CMFCRibbonBar* pRibbon = g_pMainFrame->GetRibbonBar();
+	ASSERT_VALID(pRibbon);
+	CMFCRibbonComboBox* pCombobxTV = DYNAMIC_DOWNCAST(CMFCRibbonComboBox, pRibbon->FindByID(ID_COMBO_TVPORT));
+
+	// 保存到配置文件中;
+	int nCurSel = pCombobxTV->GetCurSel();
+	if (nCurSel != CB_ERR)
+	{
+		CString strTVPort = pCombobxTV->GetEditText();
+		WritePrivateProfileString(_T("COMM"), _T("serial_communicator_port"), strTVPort, m_szRsCfgPath);
+		m_rscfg.tv_port = strTVPort.GetString();
+	}
+}
+
+
+void CMainFrame::OnUpdateCombo2Tv(CCmdUI* pCmdUI)
+{
+	// TODO: 在此添加命令更新用户界面处理程序代码
+}

+ 3 - 0
SATHelper/SATHelper/MainFrm.h

@@ -204,6 +204,7 @@ public:
 		std::string full_cut;	// 是否全步骤截图;('True/False')
 		//....
 		std::string tg39_port;
+		std::string tv_port;
 		std::string sat_home;
 		std::string sat_result_dir;
 		std::string chroma22293;
@@ -282,6 +283,8 @@ public:
 	// 信号仪2CheckBox;
 	afx_msg void OnCheck2_22293();
 	afx_msg void OnUpdateCheck2_22293(CCmdUI* pCmdUI);
+	afx_msg void OnCombo2Tv();
+	afx_msg void OnUpdateCombo2Tv(CCmdUI* pCmdUI);
 };
 
 

+ 3 - 1
SATHelper/SATHelper/SATHelper.cpp

@@ -111,14 +111,16 @@ BOOL CSATHelperApp::InitInstance()
 	EnableTaskbarInteraction(FALSE);
 #endif
 
-#if 1
+#ifndef _DEBUG
 	g_hMutex = ::CreateMutex(NULL, FALSE, _T("SATHelper"));
 	if (GetLastError() == ERROR_ALREADY_EXISTS)
 	{
 		::MessageBox(NULL, _T("SATHelper已经打开!"), _T("温馨提示"), MB_ICONINFORMATION);
 		return FALSE;
 	}
+#endif
 
+#if 1
 	GdiplusStartupInput gdiplusStartupInput;
 	GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);
 

+ 12 - 12
SATHelper/SATHelper/SATHelper.rc

@@ -53,11 +53,11 @@ BEGIN
     "\r\n"
     "#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)\r\n"
     "LANGUAGE 4, 2\r\n"
-    "#include ""res\\SATHelper.rc2""  // 闂?Microsoft Visual C++ 缂傚倸鍊搁崐褰掓偋閻愬灚顐芥い鎰堕檮閸庡秹鏌涢弴銊ユ灓闁靛牜鍋呯换?\n"
-    "#include ""l.CHS\\afxres.rc""      // 闂備礁鎼粔鏉懨洪妶澶婇棷妞ゆ牗绮庣壕濂告煕閺囥劋绨兼い?\n"
-    "#include ""l.CHS\\afxprint.rc""    // 闂備胶鎳撻悘姘跺箰缁嬭法鏆?闂備胶鎳撻悘姘跺箰缁嬭法鏆ら柛鎰ㄦ櫔缁憋綁鏌涢弴銊ユ珮婵炲吋妫冮幃纭咁槻閻庢凹鍘鹃懞?\n"
+    "#include ""res\\SATHelper.rc2""  // 闂?Microsoft Visual C++ 缂傚倸鍊搁崐鎼佸磹瑜版帗鍋嬮柣鎰仛椤愯姤銇勯幇鍫曟闁稿骸绉归弻娑㈠即閵娿儲鐏撻梺闈涚墱閸嬪懐鎹?\n"
+    "#include ""l.CHS\\afxres.rc""      // 闂傚倷绀侀幖顐ょ矓閺夋嚚娲Χ婢跺﹪妫峰銈嗙墬缁海澹曟總鍛婄厱闁哄洢鍔嬬花鍏笺亜?\n"
+    "#include ""l.CHS\\afxprint.rc""    // 闂傚倷鑳堕幊鎾绘倶濮樿泛绠扮紒瀣硶閺?闂傚倷鑳堕幊鎾绘倶濮樿泛绠扮紒瀣硶閺嗐倝鏌涢幇銊︽珨缂佹唻缍侀弻娑㈠即閵娿儲鐝┑鐐插悑濡啴骞冪涵鍜佹Щ闁诲孩鍑归崢楣冩嚍?\n"
     "#if !defined(_AFXDLL)\r\n"
-    "#include ""l.CHS\\afxribbon.rc""        // MFC 闂備礁鎲″濠氬窗閺囥垹绀傛慨妞诲亾鐎规洜濞€瀹曨偊宕熼鈧顖炴⒑绾懐鐒介柛鎰╁妿閸橆剟姊洪崫鍕垫%闁靛牆娲㈤崑鎺戔攽?\n"
+    "#include ""l.CHS\\afxribbon.rc""        // MFC 闂傚倷绀侀幉鈥愁潖婵犳艾绐楅柡鍥ュ灩缁€鍌涙叏濡炶浜鹃悗瑙勬礈婵炩偓鐎规洦鍋婂畷鐔碱敆閳ь剟顢旈鐐粹拺缁绢厼鎳愰悞浠嬫煕閹扳晛濡块柛姗嗗墴濮婃椽宕崟鍨紖闂侀潧鐗嗗ú銏ゅ磻閹烘垟鏀?\n"
     "#endif\r\n"
     "#endif\r\n"
     "\0"
@@ -471,8 +471,8 @@ END
 //
 
 VS_VERSION_INFO VERSIONINFO
- FILEVERSION 1,0,0,1
- PRODUCTVERSION 1,0,0,1
+ FILEVERSION 2,0,0,1
+ PRODUCTVERSION 2,0,0,1
  FILEFLAGSMASK 0x3fL
 #ifdef _DEBUG
  FILEFLAGS 0x1L
@@ -489,12 +489,12 @@ BEGIN
         BEGIN
             VALUE "CompanyName", "自动化测试小组"
             VALUE "FileDescription", "SATHelper"
-            VALUE "FileVersion", "1.0.0.1"
+            VALUE "FileVersion", "2.0.0.1"
             VALUE "InternalName", "SATHelper.exe"
             VALUE "LegalCopyright", "自动化测试小组。  保留所有权利。"
             VALUE "OriginalFilename", "SATHelper.exe"
             VALUE "ProductName", "自动化测试运行平台"
-            VALUE "ProductVersion", "1.0.0.1"
+            VALUE "ProductVersion", "2.0.0.1"
         END
     END
     BLOCK "VarFileInfo"
@@ -782,11 +782,11 @@ END
 
 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
 LANGUAGE 4, 2
-#include "res\SATHelper.rc2"  // 闂?Microsoft Visual C++ 缂傚倸鍊搁崐褰掓偋閻愬灚顐芥い鎰堕檮閸庡秹鏌涢弴銊ユ灓闁靛牜鍋呯换?
-#include "l.CHS\afxres.rc"      // 闂備礁鎼粔鏉懨洪妶澶婇棷妞ゆ牗绮庣壕濂告煕閺囥劋绨兼い?
-#include "l.CHS\afxprint.rc"    // 闂備胶鎳撻悘姘跺箰缁嬭法鏆?闂備胶鎳撻悘姘跺箰缁嬭法鏆ら柛鎰ㄦ櫔缁憋綁鏌涢弴銊ユ珮婵炲吋妫冮幃纭咁槻閻庢凹鍘鹃懞?
+#include "res\SATHelper.rc2"  // 闂?Microsoft Visual C++ 缂傚倸鍊搁崐鎼佸磹瑜版帗鍋嬮柣鎰仛椤愯姤銇勯幇鍫曟闁稿骸绉归弻娑㈠即閵娿儲鐏撻梺闈涚墱閸嬪懐鎹?
+#include "l.CHS\afxres.rc"      // 闂傚倷绀侀幖顐ょ矓閺夋嚚娲Χ婢跺﹪妫峰銈嗙墬缁海澹曟總鍛婄厱闁哄洢鍔嬬花鍏笺亜?
+#include "l.CHS\afxprint.rc"    // 闂傚倷鑳堕幊鎾绘倶濮樿泛绠扮紒瀣硶閺?闂傚倷鑳堕幊鎾绘倶濮樿泛绠扮紒瀣硶閺嗐倝鏌涢幇銊︽珨缂佹唻缍侀弻娑㈠即閵娿儲鐝┑鐐插悑濡啴骞冪涵鍜佹Щ闁诲孩鍑归崢楣冩嚍?
 #if !defined(_AFXDLL)
-#include "l.CHS\afxribbon.rc"        // MFC 闂備礁鎲″濠氬窗閺囥垹绀傛慨妞诲亾鐎规洜濞€瀹曨偊宕熼鈧顖炴⒑绾懐鐒介柛鎰╁妿閸橆剟姊洪崫鍕垫%闁靛牆娲㈤崑鎺戔攽?
+#include "l.CHS\afxribbon.rc"        // MFC 闂傚倷绀侀幉鈥愁潖婵犳艾绐楅柡鍥ュ灩缁€鍌涙叏濡炶浜鹃悗瑙勬礈婵炩偓鐎规洦鍋婂畷鐔碱敆閳ь剟顢旈鐐粹拺缁绢厼鎳愰悞浠嬫煕閹扳晛濡块柛姗嗗墴濮婃椽宕崟鍨紖闂侀潧鐗嗗ú銏ゅ磻閹烘垟鏀?
 #endif
 #endif
 

文件差異過大導致無法顯示
+ 0 - 0
SATHelper/SATHelper/res/ribbon.mfcribbon-ms


+ 2 - 1
SATHelper/SATHelper/resource.h

@@ -156,7 +156,8 @@
 #define BTN_DEF_SOUND                   32802
 #define ID_COMBO2_22293                 32803
 #define ID_CHECK2_22293                 32804
-#define ID_BUTTON2                      32805
+#define ID_COMBO_TVPORT                 32805
+/*#define ID_BUTTON2                      32805*/
 #define ID_COMBO1_22293                 32806
 #define ID_CHECK1_22293                 32807
 #define ID_CHECK_SHOT_SPEC              32818

部分文件因文件數量過多而無法顯示