您的位置:首页 > 其它

MFC 的List Control控件实现可编辑

2010-11-05 14:56 1361 查看
所谓List Contro l,就是用来做LIist的,至于编辑,估计MS也没提供这个功能。比较诡异的是在给List Control 设 置属性的时候居然看到Edit Label ,处于好奇点了点,发现只能修改第一列,改了之后失去焦点又变 回原来的文本。没有深入试下去,我估计可以修改第一列的数据。
其实要实现编辑功能,只要做一个Edit Control 就 可以了,当需要编辑的时候,把这个Edit Control 动态显示到需要显示的地方。看效果图:
双击输入框:



输入完成,点击空白处:



在这里,响应List Control的双击事件:

void  CAddInstanceDlg::OnNMClickList3(NMHDR  * pNMHDR, LRESULT  * pResult)
{
LPNMITEMACTIVATE pNMItemActivate  =  reinterpret_cast < LPNMITEMACTIVATE > (pNMHDR);

if (editItem.m_hWnd  !=  NULL)
{
editItem.ShowWindow( 0 );
if (hitRow  !=   - 1 )
{
CString text;
editItem.GetWindowText(text);
listControl.SetItemText(hitRow, hitCol, text);
}
}
hitCol  =  hitRow  =   - 1 ;
* pResult  =   0 ;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: