CListCtrl::HitTest
判斷清單檢視項目),如果有的話,在指定的位置。
int HitTest(
LVHITTESTINFO* pHitTestInfo
) const;
int HitTest(
CPoint pt,
UINT* pFlags = NULL
) const;
參數
pHitTestInfo
包含這個位置進行點擊測試,並取得與點擊測試結果的詳細資訊 LVHITTESTINFO 結構的位址。pt
要測試的點。pFlags
要取得關於測試結果的相關資訊之整數的指標。請參閱 LVHITTESTINFO 結構的 flags 成員的說明 Windows SDK的。
傳回值
項目的索引。 pHitTestInfo(如果有的話),或是-1 指定位置則為。
備註
您可以使用 LVHT_ABOVE、 LVHT_BELOW、 LVHT_TOLEFT和結構的 flag 成員的 LVHT_TORIGHT 值決定捲動清單檢視控制項的內容。如果位置是位於工作區左邊的上,例如,這些旗標可以結合。
您可以使用來測試架構的 flag 成員的 LVHT_ONITEM 值判斷指定位置是否在清單檢視項目。這個值是位元 OR 運算。 LVHT_ONITEMICON、 LVHT_ONITEMLABEL和結構的 flag 成員的 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;
}
需求
Header: afxcmn.h