// 현재 스크롤 위치 추출
int iScrollPos = listctrl.GetScrollPos(SB_VERT);
// 작업 코드
........
// 리스트의 현재 행 추출
int iNum(-1);
POSITION pos = listctrl.GetFirstSelectedItemPosition();
iNum = listctrl.GetNextSelectedItem(pos);
........
// 스크롤 움직이기
CRect ref;
listctrl.GetItemRect(0,ref,LVIR_BOUNDS);
CSize szHeight(0,ref.Height() * iScrollPos);
listctrl.Scroll(szHeight);
listctrl.SetScrollPos(SB_VERT, iScrollPos, FALSE);
// 현재 행 선택
if(iNum >= 0)
{
// 먼저 현재 선택상태를 해제합니다
m_list_Immun_Buff.SetItemState( -1, 0, LVIS_SELECTED|LVIS_FOCUSED );
// 원하는 아이템을 선택합니다
m_list_Immun_Buff.SetItemState(iNum, LVIS_FOCUSED | LVIS_SELECTED, LVIS_FOCUSED | LVIS_SELECTED);
// 선택된 아이템을 표시합니다
m_list_Immun_Buff.EnsureVisible(iNum, false);
// 리스트 컨트롤에 포커스를 맞춥니다
m_list_Immun_Buff.SetFocus();
}
'MFC 인터페이스' 카테고리의 다른 글
운영체제 32bit 64비트 확인 (0) | 2013.10.20 |
---|---|
파일 드로그앤 드롭 이벤트 처리 (0) | 2013.10.20 |
MFC 몇가지 코드 (0) | 2013.10.19 |
디비 연동 (0) | 2013.07.09 |
리스트 컨트롤 선택된 객체 삭제 하기 (0) | 2013.07.05 |