【发布时间】:2015-04-22 10:58:36
【问题描述】:
我使用 CListCtrl 创建了一个 MFC Visual Studio 项目。我在 CDialog 类中添加了一些项目,例如:
int l_iItem = m_listCtrl.InsertItem(LVIF_TEXT|LVIF_STATE, counter, someString, 0, LVIS_SELECTED, 0, 0);
m_listCtrl.SetItemText( l_iItem, 1, blockHexChar );
m_listCtrl.SetItemText( l_iItem, 2, description);
这很好用。
之后我想编辑一个子项(通过双击事件)。工作也很好。
如果编辑完成(这是在 CListCtrl 类中),
OnEndLabelEdit(NMHDR* pNMHDR, LRESULT* pResult)
将被调用。看起来是这样的
LV_DISPINFO *plvDispInfo = (LV_DISPINFO *)pNMHDR;
LV_ITEM *plvItem = &plvDispInfo->item;
if (plvItem->pszText != NULL)
{
bool res = SetItemText(plvItem->iItem, plvItem->iSubItem, plvItem->pszText);
}
我总是返回 0,所以 SetItemText 失败了。
知道我做错了什么吗?
干杯 ehmkey
【问题讨论】: