从CHeaderCtrl派生了一个类 添加到view中,怎么捕获到表头单击的消息哦?WM_LBUTTONDWON可以捕捉到,但是没法确定是单击在哪个列上,如果单击在列之间的分隔条也会响应WM_LBUTTONDWON,有啥办法哦各位高手!

解决方案 »

  1.   

    应该是在view中处理WM_NOTIFY事件,再在里面处理HDN_开关的事件 ,如HDN_ITEMCLICK 
      

  2.   

    HDN_ITEMCLICK 捕捉到这个消息无法判断当前单击的是第几列
      

  3.   


    void CMFCtestDlg::OnHdnItemclickList1(NMHDR *pNMHDR, LRESULT *pResult)
    {
    LPNMHEADER phdr = reinterpret_cast<LPNMHEADER>(pNMHDR);
    CString str;
    str.Format(TEXT("表头第: %d 列"), phdr->iItem);
    MessageBox(str);
    *pResult = 0;
    }