右键双键时,不论是空白处还是击中子项都会有动作,现在我只想做到双击子项有动作。不知如何确定鼠标是击在空白处还是控件的子项!
    谢谢

解决方案 »

  1.   

    int HitTest( LVHITTESTINFO* pHitTestInfo ) const;int HitTest( CPoint pt, UINT* pFlags = NULL ) const;
      

  2.   

    用HitTest的还得先去到当前的光标的位置,可以用GetCursorPos
    不如干脆用GetCurSel (single-selecton list box) or GetSel 来获取有没有点到哪一项上,如果返回0,那就是点在空白处
      

  3.   

    点在空白处的时候, GetSel返回0, GetCurSel返回的是LB_ERR
      

  4.   

    to 各位英雄:
     Clistbox是没有HitTest这个成员函数的。
      

  5.   

    双击的时候,用GetFirstSelectedItemPosition();  //得到选项。然后判断。
      

  6.   

    用GetCurSel好,返回值小于0的就是没有点在子项上
      

  7.   

    void CTabPage::OnRclickLstVer(NMHDR* pNMHDR, LRESULT* pResult) 
    {
    // TODO: Add your control notification handler code here
    UNREFERENCED_PARAMETER(pNMHDR); UINT uSelCount;
    uSelCount = m_lstVer.GetSelectedCount();//获得选中条目的数目
    if(uSelCount < 1)   //没有子项被选中,即空白处
    {
                    ............
              }
    else
    {
              ............
              }

    *pResult = 0;
    }