//요기는 메시지 맵 -> ListCtrl을 가지고 있는 Dlg의 메시지 맵
ON_NOTIFY(LVN_ITEMCHANGED,IDC_RECIP_LIST,OnLvnItemchangedListItem)
//이 함수를 만들어야한다
void 다이얼로그::OnLvnItemchangedListItem(NMHDR *pNMDHR, LRESULT *pResult){
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMDHR);
if( pNMLV && (pNMLV->uNewState == (UINT)(LVIS_FOCUSED | LVIS_SELECTED))){
int nAt = pNMLV->iItem;
//nAt = 선택된 아이템임
//글자 얻어오기
char szText[128];
LVITEM item;
memset(&item,0,sizeof(LVITEM));
memset(szText,0,sizeof(szText));
item.mask = LVIF_TEXT;
item.iItem = nAt;
item.iSubItem = 1;
item.pszText = szText;
item.cchTextMax = sizeof(szText);
m_wndList.GetItem(&item);
}
*pResult = 0;
}
아니면...
MFC환경이므로.. Text를 퍼오기 위해서는...
int i = list.GetNextItem( -1, LVNI_SELECTED );
CString strSel = list.GetItemText( i, 0 );
로 처리해도 괜찮을 것 같다.
댓글