想让CListCtrl可以编辑每一项,却没有执行到OnBeginLabelEdit,请各位帮帮看看了,该怎么处理
想让CListCtrl可以编辑每一项,却没有执行到OnBeginLabelEdit,请各位帮帮看看了
我用Create的方式,在View类里创建了一个CListCtrl,想让它可以像Excel一样编辑每一个单元格。
在View类.h文件里添加了两个消息
afx_msg void OnBeginLabelEdit(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnEndLabelEdit(NMHDR * pNMHDR, LRESULT * pResult);
在View类.cpp文件里:
BEGIN_MESSAGE_MAP(CGeneralManageView, CView)
//......
ON_NOTIFY_REFLECT(LVN_ENDLABELEDIT, OnEndLabelEdit)//ON_CONTROL_REFLECT
ON_NOTIFY_REFLECT(LVN_BEGINLABELEDIT, OnBeginLabelEdit)
END_MESSAGE_MAP()
void CGeneralManageView::OnBeginLabelEdit(NMHDR* pNMHDR, LRESULT* pResult)
{
char buf[1024];
sprintf(buf, "执行至此111!");
AfxMessageBox(buf);
}
void CGeneralManageView::OnEndLabelEdit(NMHDR * pNMHDR, LRESULT * pResult)
{
char buf[1024];
sprintf(buf, "执行至此2221!");
AfxMessageBox(buf);
}
运行时,在子项上单击,却没有弹出对话框,请各位高手帮忙看看是怎么回事了
------解决方案--------------------
ON_NOTIFY_REFLECT 改为 ON_NOTIFY
------解决方案--------------------
只支持每一列第一个格子的可编辑,如果想像Excel一样编辑每一个单元格,用CEdit吧,双击的时候显示到要编辑的那个格子中``失去焦点时``让它隐藏就行了
------解决方案--------------------
参看这个
http://www.vckbase.com/document/viewdoc/?id=1853
------解决方案--------------------
你有set你的dialog为LABELEDIT吗?
我用Create的方式,在View类里创建了一个CListCtrl,想让它可以像Excel一样编辑每一个单元格。
在View类.h文件里添加了两个消息
afx_msg void OnBeginLabelEdit(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnEndLabelEdit(NMHDR * pNMHDR, LRESULT * pResult);
在View类.cpp文件里:
BEGIN_MESSAGE_MAP(CGeneralManageView, CView)
//......
ON_NOTIFY_REFLECT(LVN_ENDLABELEDIT, OnEndLabelEdit)//ON_CONTROL_REFLECT
ON_NOTIFY_REFLECT(LVN_BEGINLABELEDIT, OnBeginLabelEdit)
END_MESSAGE_MAP()
void CGeneralManageView::OnBeginLabelEdit(NMHDR* pNMHDR, LRESULT* pResult)
{
char buf[1024];
sprintf(buf, "执行至此111!");
AfxMessageBox(buf);
}
void CGeneralManageView::OnEndLabelEdit(NMHDR * pNMHDR, LRESULT * pResult)
{
char buf[1024];
sprintf(buf, "执行至此2221!");
AfxMessageBox(buf);
}
运行时,在子项上单击,却没有弹出对话框,请各位高手帮忙看看是怎么回事了
------解决方案--------------------
ON_NOTIFY_REFLECT 改为 ON_NOTIFY
------解决方案--------------------
只支持每一列第一个格子的可编辑,如果想像Excel一样编辑每一个单元格,用CEdit吧,双击的时候显示到要编辑的那个格子中``失去焦点时``让它隐藏就行了
------解决方案--------------------
参看这个
http://www.vckbase.com/document/viewdoc/?id=1853
------解决方案--------------------
你有set你的dialog为LABELEDIT吗?