Я создал проект Visual Studio MFC с CListCtrl. Я добавил некоторые элементы в класс CDialog, например:VisualStudio MFC CListCtrl SetItemText сбой
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