From a85f4cc17f8775845a2d9dbc359826663ede2fe0 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 금, 04 6월 2021 17:52:11 +0900
Subject: [PATCH] Ongoing80 #3417 CF AOI Review 전설비 Log Process개선 - LOG 뷰어 리스트 박스로 변경 - 시퀀스 쓰레드에서 로그 발생기 로그 쓰레드로 메시지로 전송 후 바로 다음 업무 처리

---
 ReviewSystem/ReviewSystem/DlgLog.cpp |   44 +++++++++++++++++++++++++++++---------------
 1 files changed, 29 insertions(+), 15 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/DlgLog.cpp b/ReviewSystem/ReviewSystem/DlgLog.cpp
index f93a01a..53068df 100644
--- a/ReviewSystem/ReviewSystem/DlgLog.cpp
+++ b/ReviewSystem/ReviewSystem/DlgLog.cpp
@@ -23,7 +23,20 @@
 void CDlgLog::DoDataExchange(CDataExchange* pDX)
 {
 	CDialog::DoDataExchange(pDX);
-	DDX_Control(pDX, IDC_LIST_LOG, m_ctrlLogListBox);
+	DDX_Control(pDX, IDC_LIST_LOG, m_ctrlLogList);
+}
+
+BOOL CDlgLog::OnInitDialog()
+{
+	CDialog::OnInitDialog();
+
+	// TODO:  �뿬湲곗뿉 異붽� 珥덇린�솕 �옉�뾽�쓣 異붽��빀�땲�떎.
+	m_ctrlLogList.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
+	m_ctrlLogList.InsertColumn(0, _T("�떆媛�"), LVCFMT_CENTER, 150);
+	m_ctrlLogList.InsertColumn(1, _T("�궡�슜"), LVCFMT_LEFT, 690);
+
+	return TRUE;  // return TRUE unless you set the focus to a control
+				  // �삁�쇅: OCX �냽�꽦 �럹�씠吏��뒗 FALSE瑜� 諛섑솚�빐�빞 �빀�땲�떎.
 }
 
 
@@ -52,9 +65,9 @@
 {
 	CDialog::OnSize(nType, cx, cy);
 
-	if (m_ctrlLogListBox.GetSafeHwnd())
+	if (m_ctrlLogList.GetSafeHwnd())
 	{
-		m_ctrlLogListBox.SetWindowPos(NULL, 0, 0, cx, cy, SWP_NOZORDER);
+		m_ctrlLogList.SetWindowPos(NULL, 0, 0, cx, cy, SWP_NOZORDER);
 	}
 
 	// TODO: �뿬湲곗뿉 硫붿떆吏� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
@@ -62,22 +75,23 @@
 
 void CDlgLog::DisplayMessage(const CString& strMessage)
 {
-	int nCount;
 	CTime time;
-	CString strStamp, strLog;
+	CString strStamp;
 
-	nCount = m_ctrlLogListBox.GetCount();
+	if (m_ctrlLogList.GetItemCount() > 100)
+		m_ctrlLogList.DeleteItem(0);
 
-	if (nCount % MAX_PRINT_COUNT == 0)
-	{
-		m_ctrlLogListBox.ResetContent();
-	}
+	//if (nCount % MAX_PRINT_COUNT == 0)
+	//{
+	//	m_ctrlLogList.ResetContent();
+	//}
 
 	SYSTEMTIME   currentTime;
 	::GetLocalTime(&currentTime);
 	time = CTime::GetCurrentTime();
-	strStamp.Format(_T("[%02d:%02d:%02d]"), time.GetHour(), time.GetMinute(), time.GetSecond());
-	strLog.Format(_T("%s %s"), strStamp, strMessage);
-	m_ctrlLogListBox.AddString(strLog);
-	m_ctrlLogListBox.SetCurSel(m_ctrlLogListBox.GetCount()-1);
-}
\ No newline at end of file
+	strStamp.Format(_T("[%02d:%02d:%02d:%02d:%02d:%02d]"), time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond());
+
+	int nRow = m_ctrlLogList.InsertItem(m_ctrlLogList.GetItemCount(), strStamp);
+	m_ctrlLogList.SetItemText(nRow, 1, strMessage);
+	m_ctrlLogList.EnsureVisible(nRow, FALSE);
+}

--
Gitblit v1.9.3