Aracılığıyla paylaş


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

Ayrıca bkz.

Başvuru

CListCtrl sınıfı

Hiyerarşi grafik

CListCtrl::GetItemPosition