如题

解决方案 »

  1.   

       添加listctrl控件的NM_CLICK消息相应函数
               void CTest6Dlg::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
               {
                    // 方法一:
                    /*
                    DWORD dwPos = GetMessagePos();
                    CPoint point( LOWORD(dwPos), HIWORD(dwPos) );
       
                    m_list.ScreenToClient(&point);
       
                    LVHITTESTINFO lvinfo;
                    lvinfo.pt = point;
                    lvinfo.flags = LVHT_ABOVE;
         
                    int nItem = m_list.SubItemHitTest(&lvinfo);
                    if(nItem != -1)
                    {
                         CString strtemp;
                         strtemp.Format("单击的是第%d行第%d列", lvinfo.iItem, lvinfo.iSubItem);
                         AfxMessageBox(strtemp);
                    }
                   */
       
                   // 方法二:
                   /*
                    NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
                    if(pNMListView->iItem != -1)
                    {
                         CString strtemp;
                         strtemp.Format("单击的是第%d行第%d列",
                                         pNMListView->iItem, pNMListView->iSubItem);
                         AfxMessageBox(strtemp);
                    }
                   */
                    *pResult = 0;
               }
      

  2.   

    int iSelect = m_listctrl.GetSelectionMark();     //将选择的项号赋予i
    获取行号的
      

  3.   

    //获取选中的当前位置
    nCurIndex=pList->GetSelectionMark();