BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
ON_NOTIFY(LVN_ENDLABELEDIT, IDC_LIST1, OnEndlabeleditList1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP
void CAboutDlg::OnEndlabeleditList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
LV_DISPINFO* pDispInfo = (LV_DISPINFO*)pNMHDR;
// TODO: Add your control notification handler code here

*pResult = 0;
}
同样你可以做如下的强制转换
void CAboutDlg::OnEndlabeleditList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
GV_DISPINFO* pDispInfo = (GV_DISPINFO*)pNMHDR;
// TODO: Add your control notification handler code here
GV_ITEM item = pDispInfo->item; *pResult = 0;
}

解决方案 »

  1.   

    1、lVN_ENDLABELEDIT究竟对哪些控件起作用?
    2、是不是我的理解有误?比如:当光标从一个单元格转移到另一个时,系统发送lVN_ENDLABELEDIT消息,并自动为参数赋值。若是这样,要用标准结构LVITEM才行,
    而自定义的结构,里面的元素与LVITEM不同,系统怎么能自动给其赋值呢?我的理解可能有很大误区,请不吝赐教! 
      

  2.   

    这里可能涉及到MFC4.0以上本本所特有的消息反射机制吧.具体可以看一下MSDN.如果我没有记错的话GV_ITEM 好象是MFCGridCtrl的项定义,好象不是标准MFC库中的,它对消息的定义很多参照了ListCtrl的定义吧.
      

  3.   

    如果是,EDIT 控件要怎样写 
    ON_NOTIFY(LVN_ENDLABELEDIT, IDC_EDIT1, ONKEYDOWN1)?????
    哪位大虾能告知?