CListCtrl::HitTest
된 경우 지정 된 위치에 있는 목록 보기 항목을 결정 합니다.
int HitTest(
LVHITTESTINFO* pHitTestInfo
) const;
int HitTest(
CPoint pt,
UINT* pFlags = NULL
) const;
매개 변수
pHitTestInfo
주소는 LVHITTESTINFO 적중 테스트 하 고 위치를 포함 하는 구조 적중된 테스트의 결과 대 한 정보를 받습니다.pt
테스트할 점입니다.pFlags
테스트 결과 대 한 정보를 수신 하는 정수에 대 한 포인터입니다. 내용은 플래그 소속은 LVHITTESTINFO 구조에 Windows SDK.
반환 값
지정 된 위치에 있는 항목의 인덱스 pHitTestInfo있는 경우, 또는 그렇지 않으면-1입니다.
설명
사용할 수는 LVHT_ABOVE, LVHT_BELOW, LVHT_TOLEFT, 및 LVHT_TORIGHT 구조체의 값 플래그 구성원 목록 뷰 컨트롤의 내용을 스크롤할 것인지 결정 합니다. 위치 및 클라이언트 영역의 왼쪽 위에 있으면 이러한 플래그 2, 예를 들어, 결합할 수 있습니다.
테스트할 수 있습니다는 LVHT_ONITEM 구조체의 값이 플래그 멤버를 지정 된 위치 목록 보기 항목 위에 있는지 확인 합니다. 이 값은 비트 OR 작업입니다는 LVHT_ONITEMICON, LVHT_ONITEMLABEL, 및 LVHT_ONITEMSTATEICON 구조체의 값 플래그 멤버입니다.
예제
void CListCtrlDlg::OnRClick(NMHDR* pNMHDR, LRESULT* pResult)
{
LPNMITEMACTIVATE pia = (LPNMITEMACTIVATE)pNMHDR;
CPoint point(pia->ptAction);
// Select the item the user clicked on.
UINT uFlags;
int nItem = m_myListCtrl.HitTest(point, &uFlags);
if (uFlags & LVHT_ONITEMLABEL)
{
m_myListCtrl.SetItem(nItem, 0, LVIF_STATE, NULL, 0, LVIS_SELECTED,
LVIS_SELECTED, 0);
}
*pResult = 0;
}
요구 사항
헤더: afxcmn.h