一个数据库操作,控制面板放在子对话框上,数据显示由主窗口实现,为何调用SetItemText时
出现Debug Assertion Failed!
在winctrl2.cpp中的ASSERT((GetStyle() & LVS_OWNERDATA)==0)处异常终止。
程序中更新数据的代码为:
((CDataOperateDlg*)AfxGetMainWnd())-> m_List-> SetItemText(nRow,1,rs.m_lPONo==adFldOK?rs.m_chPONo:_T(""));
所要更新的数据内容本身是不存在问题的,把语句写成SetItemText(nRow,1,_T(""))报同样的错误。
主窗口上放了一个CTabCtrl,控制面板放在CTabCtrl中的页面上。
出现Debug Assertion Failed!
在winctrl2.cpp中的ASSERT((GetStyle() & LVS_OWNERDATA)==0)处异常终止。
程序中更新数据的代码为:
((CDataOperateDlg*)AfxGetMainWnd())-> m_List-> SetItemText(nRow,1,rs.m_lPONo==adFldOK?rs.m_chPONo:_T(""));
所要更新的数据内容本身是不存在问题的,把语句写成SetItemText(nRow,1,_T(""))报同样的错误。
主窗口上放了一个CTabCtrl,控制面板放在CTabCtrl中的页面上。
解决方案 »
- 写二进制文件奇怪问题
- dll编译时显示无法找到组件!!谢谢
- 关于远程线程注入dll的几个问题
- 用C做Windows API编程,想要调用.net framework中的控件(比如splitter),要怎么办?
- 求vc操作文件代码
- 学校要分专业,c++ delphi java哪个有前途?
- @@@@高分求@@@@@请问用gdi+的getThumbnailImage得到的缩略图如何保存起来?
- 请教一个win2k pro 的问题, 谢谢
- 急!请求帮助 关于 pdf 和 多数据源 的问题
- 压缩视频并传输后,无法解压缩,怎么办???急死了!!!
- 如何利用combox进行页面的选择
- 如何实现关闭登录框,即关闭整个程序??
比如AfxGetMainWnd(),需要判断是哪个窗口;
不要把窗口对象弄错了,指针指错了位置了吧
http://msdn2.microsoft.com/en-us/library/bb774735(VS.85).aspx
nRow=((CDataOperateDlg*)AfxGetMainWnd())->m_List.InsertItem(i,chID);
在这句后放断点,发现已经正常从数据库读到了值,而且nRow已经返回了第一行的行号,
说明插入第一行成功,但是一到SetItemText插入数据时便异常终止了。而且我并没有设置LVS_OWNERDATA属性,我曾经试过通过lStyle &= ~LVS_OWNERDATA
强制去除LVS_OWNERDATA属性也是报同样错误,所以很纳闷,不清楚到底哪里有问题。