CListCtrl::HitTest
Hangi liste görünümü öğesi belirtilen konumda, olup olmadığını belirler.
int HitTest(
LVHITTESTINFO* pHitTestInfo
) const;
int HitTest(
CPoint pt,
UINT* pFlags = NULL
) const;
Parametreler
pHitTestInfo
Adres, bir LVHITTESTINFO test ve vuruş pozisyonu içeren yapısı vuruş testi sonuçları hakkındaki bilgileri alır.pt
Test edilecek nokta.pFlags
Test sonuçları hakkındaki bilgileri alır bir tamsayı için işaretçi.Bir açıklama görmek bayrakları üyesi LVHITTESTINFO , yapı Windows SDK.
Dönüş Değeri
Madde tarafından belirtilen konumdaki dizini pHitTestInfo, varsa veya başka türlü -1.
Notlar
Kullanabileceğiniz LVHT_ABOVE, LVHT_BELOW, LVHT_TOLEFT, ve LVHT_TORIGHT değerler yapısının 's bayrağı bir liste görünüm denetimi içeriğini kaydırmak karar vermek için üye.İstemci alanının solundaki ve üstündeki konumu ise, iki Bu bayraklar, örneğin, birleştirilebilir.
İçin test LVHT_ONITEM değeri yapısının 's bayrağı verilen bir konuma liste görünümü öğesi olup olmadığını belirlemek için üye.Bitsel or işlemi açıktır bu değeri LVHT_ONITEMICON, LVHT_ONITEMLABEL, ve LVHT_ONITEMSTATEICON değerler yapısının 's bayrağı üye.
Örnek
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;
}
Gereksinimler
Başlık: afxcmn.h