ClistCtrl 컨트롤 요약

초학
오늘 ClistCtrl 컨트롤에 대해 학습한 내용을 요약하면 다음과 같습니다.
1. ClistCtrl 컨트롤 초기화
void CDriverCard_LHS_2_1Dlg::InitListCtrl(void)
{
	m_listCtrl.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
	m_listCtrl.InsertColumn(0,_T("NO."),LVCFMT_LEFT,100);
	m_listCtrl.InsertColumn(1,_T("Name"),LVCFMT_LEFT,100);
	m_listCtrl.InsertColumn(2,_T("Car"),LVCFMT_LEFT,100);
	m_listCtrl.InsertColumn(3,_T("Date"),LVCFMT_LEFT,100);
	m_listCtrl.InsertColumn(4,_T("Available"),LVCFMT_LEFT,100);
	int i = 0;
	for (std::vector<CCardInfo>::iterator p = m_carManage.m_vciRecord.begin();
		p != m_carManage.m_vciRecord.end();p++)
	{
		CString str1,str2,str3,str4,str5;
		str1.Format(_T("%s"),p->m_cardId);
		str2.Format(_T("%s"),p->m_cardName);
		str3.Format(_T("%s"),p->m_cardCar);
		str4.Format(_T("%s"),p->m_cardDate);
		str5.Format(_T("%s"),p->m_cardAvailable);
		m_listCtrl.InsertItem(i,str1);
		m_listCtrl.SetItemText(i,1,str2);
		m_listCtrl.SetItemText(i,2,str3);
		m_listCtrl.SetItemText(i,3,str4);
		m_listCtrl.SetItemText(i,4,str5);
		
		
		i++;
	}

}

상술한 코드는 초기화 열의 정보이다.
2. 줄마다 정보 추가
CString str1,str2,str3,str4,str5;
		int i = 0;
		str1.Format(_T("%s"),dlg.m_pAddCarInfo->m_cardId);
			str2.Format(_T("%s"),dlg.m_pAddCarInfo->m_cardName);
			str3.Format(_T("%s"),dlg.m_pAddCarInfo->m_cardCar);
			str4.Format(_T("%s"),dlg.m_pAddCarInfo->m_cardDate);
			str5.Format(_T("%s"),dlg.m_pAddCarInfo->m_cardAvailable);
			
			i = m_listCtrl.GetItemCount();
			
			m_listCtrl.InsertItem(i,str1);
			m_listCtrl.SetItemText(i,1,str2);
			m_listCtrl.SetItemText(i,2,str3);
			m_listCtrl.SetItemText(i,3,str4);
			m_listCtrl.SetItemText(i,4,str5);

InsertItem () 함수로 줄을 추가한 다음 SetItemText () 함수로 다른 열의 정보를 추가합니다.
3. 한 줄 정보 삭제
int nCount = m_myListCtrl.GetItemCount();

// Delete all of the items from the list view control.
for (int i=0; i < nCount; i++)
{
   m_myListCtrl.DeleteItem(0);
}

예는 msdn에서 왔습니다. DeleteAllItem () 함수를 사용했기 때문에 삭제되지 않은 줄을 추가하는 것이 번거롭습니다.

좋은 웹페이지 즐겨찾기