下面代码中listShow是一个CListCtrl错误是:debug assertion Failed
program:....exe File ...winctrl2.cpp Line 540请问这是什么原因?
listShow.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
listShow.SetBkColor(RGB(247,247,255));
listShow.SetTextColor(RGB(0,0,255));
listShow.SetTextBkColor(RGB(247,247,255)); listShow.InsertColumn(0,LPCTSTR(TEXT("ID")),LVCFMT_LEFT,80);
listShow.InsertColumn(1,LPCTSTR(TEXT("名字")),LVCFMT_LEFT,100); listShow.InsertItem(0,LPCTSTR(TEXT("1")));
listShow.SetItemText(0,1,LPCTSTR(TEXT("Enzo")));//加上这个语句运行时就出错了
//没加上那句话运行时不出错但是,列表空间中只是出现了两个空白行 listShow.InsertItem(1,LPCTSTR(TEXT("2")));
program:....exe File ...winctrl2.cpp Line 540请问这是什么原因?
listShow.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
listShow.SetBkColor(RGB(247,247,255));
listShow.SetTextColor(RGB(0,0,255));
listShow.SetTextBkColor(RGB(247,247,255)); listShow.InsertColumn(0,LPCTSTR(TEXT("ID")),LVCFMT_LEFT,80);
listShow.InsertColumn(1,LPCTSTR(TEXT("名字")),LVCFMT_LEFT,100); listShow.InsertItem(0,LPCTSTR(TEXT("1")));
listShow.SetItemText(0,1,LPCTSTR(TEXT("Enzo")));//加上这个语句运行时就出错了
//没加上那句话运行时不出错但是,列表空间中只是出现了两个空白行 listShow.InsertItem(1,LPCTSTR(TEXT("2")));
2、有可能你InsertItem没有成功
listShow.InsertItem(i,"1");
listShow.SetItemText(0,1,"Enzo")));//
listShow.InsertItem(0,"1");
BOOL CListCtrl::SetItemText(int nItem, int nSubItem, LPCTSTR lpszText)
{
ASSERT(::IsWindow(m_hWnd));
ASSERT((GetStyle() & LVS_OWNERDATA)==0); //<----这里
LVITEM lvi;
lvi.iSubItem = nSubItem;
lvi.pszText = (LPTSTR) lpszText;
return (BOOL) ::SendMessage(m_hWnd, LVM_SETITEMTEXT, nItem, (LPARAM)&lvi);
}
我的是在这里弹出错误了, 怎回事?