From 3ce48f6dbeb537e252edb0d62c88a28796e36674 Mon Sep 17 00:00:00 2001
From: SWK <sungwk82@diteam.co.kr>
Date: 월, 26 12월 2022 15:04:42 +0900
Subject: [PATCH] ongoing60 #4403 CF AOI Review TACT 지연 개선 1. 신호 출력 방식 재개선  - 유지 시간이 없는 신호는 바로 출력 진행하도록 변경 2. 불필요 Delay 제거 및 시퀀스 변경  - 얼라인 측정 종료 처리 간 제어 신호 먼저 출력 후 카메라 Stop으로 변경  - 물류 정보 읽기 처리 후 1000ms Delay 삭제  - 얼라인 측정 시작(카메라 Live Start) 후 Delay 300ms -> 100ms(이미지 들어오는 시간 확보 필요)  - ReadRawFile 처리 시작 전 500ms Delay 삭제  - Path Scheduling 완료 후 Review Ready 신호 출력 전 1000ms Delay 삭제 3. 버그 수정  - 이미지 저장 경로 생성 간 예외 처리 부분 버그 수정 4. 로그 시간 출력 불합리 개선  - 로그 시간이 파일 출력 시점으로 작성되어 로그 스래드 지연 시 시간이 맞지 않는 불합리 있음  - 로그 시간은 로그 발생 시점에 시간 저장, 해당 시간 이용하여 파일에 기록하도록 변경

---
 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