社区
界面
帖子详情
CListCtrl GetItemCount() 断言错误
chenchenyangll
2011-07-03 06:38:47
我在一个FormView里,自己添加了CListCtrl* m_listCtrl
在OnInitialUpdate中初始化了它,并且添加了列、数据等等
然后在类的一个方法里想要从尾部添加进列表,所以需要调用GetItemCount()
但是他一直报断言错误,m_listCtrl不为空,断言是在::SendMessage(.......)报的
求高手救命啊!!!
...全文
478
5
打赏
收藏
CListCtrl GetItemCount() 断言错误
我在一个FormView里,自己添加了CListCtrl* m_listCtrl 在OnInitialUpdate中初始化了它,并且添加了列、数据等等 然后在类的一个方法里想要从尾部添加进列表,所以需要调用GetItemCount() 但是他一直报断言错误,m_listCtrl不为空,断言是在::SendMessage(.......)报的 求高手救命啊!!!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenchenyangll
2011-07-03
打赏
举报
回复
[Quote=引用 4 楼 schlafenhamster 的回复:]
CWnd* GetDlgItem( int nID ) const;
void CWnd::GetDlgItem( int nID, HWND* phWnd ) const;
Return Value
A pointer to the given control or child window. If no control with the integer ID given b……
[/Quote]
赞 谢谢啦~
schlafenhamster
2011-07-03
打赏
举报
回复
CWnd* GetDlgItem( int nID ) const;
void CWnd::GetDlgItem( int nID, HWND* phWnd ) const;
Return Value
A pointer to the given control or child window. If no control with the integer ID given by the nID parameter exists, the value is NULL.
The returned pointer may be temporary and should not be stored for later use.
chenchenyangll
2011-07-03
打赏
举报
回复
囧。。
头文件: CListCtrl* m_listCtrl;
构造函数 :m_listCtrl(NULL);
OnInitialUpdate:
m_listCtrl = (CListCtrl*) GetDlgItem(IDC_LIST);
// do something
到此,显示正常
foo() {
//m_listCtrl = (CListCtrl*) GetDlgItem(IDC_LIST); 加上这句就OK
int index = m_listCtrl->GetItemCount(); // 不加上面这句就报错
}
快乐鹦鹉
2011-07-03
打赏
举报
回复
救不了你。不知道你这个控件怎么创建的,是局部变量还是成员变量,在另一个方法中代码是怎么写的。
不过根本的原因应该是你不知道类和实例之间的区别。
chenchenyangll
2011-07-03
打赏
举报
回复
我晕
为什么自定义的变量(不通过DDX),必须每个方法内都来一遍GetDlgItem ???
我在我的方法中最前面加入初始化的语句就行了。。。
为什么?!?!?! OnInitialUpdate不行吗? 非要DDX?
CLi
stCtrl
中的一个
错误
(c++)
作者:hn911特别说明:经过我再次测试,证明我的代码是
错误
的(删除colum不彻底,会遗留一个colum),原MSDN的示例代码是正确的(可以删除所有的colum)。感谢vanehu指出该
错误
! 出现此
错误
的原因:我太粗心了,我代码中多次创建了colum,导致MSDN的代码删除所有的colum后,又创建了部分colum。而我的修正代码,又没有测试。(因为我在程序中,最终没有使用删除co...
MFC
CLi
stCtrl
深度集成Tooltip:子类化实现动态提示与性能优化
在桌面应用开发中,Tooltip(工具提示)是一种基础且重要的用户交互辅助技术,它通过在鼠标悬停时提供即时信息提示,有效提升界面可用性和数据可读性。其核心原理是监听鼠标移动事件,通过命中测试确定悬停目标,并触发一个短暂显示的文本窗口。在MFC框架下,这一机制通常通过CToolTipCtrl控件实现,它能够与各种窗口控件深度集成,为数据密集型控件提供动态、上下文相关的信息补充。从技术价值看,良好的Tooltip集成不仅能解决文本截断问题,还能展示隐藏数据、提供附加说明,从而减少用户操作步骤,提升工作效率。在C
afxcmn.inl 132行
错误
调试疑惑及解决办法
在VC6.0环境下出现
错误
如下: 出现这个
错误
,在网络上找了半天都解决不了。很纳闷的问题。于是自己搜索afxcmn.inl文件,找到: c:\Program Files (x86)\Microsoft Visual Studio\VC98\MFC\Include\afxcmn.inl 在132行处找到如下: _AFXCMN_INLINE int
CLi
stCtrl
::Get
Item
VC6.0给ListView(
CLi
stCtrl
)添加数据
CLi
stCtrl
* theCtrl = GetLi
stCtrl
(); theCtrl.InsertColumn(0,"姓名",LVCFMT_CENTER,50); theCtrl.InsertColumn(0,"班级",LVCFMT_CENTER,50); 如何将 “张三”加入到姓名列中;如何将“初三四班”加入到班级列中? theCtrl.Insert
Item
(0, "张三"...
CLi
stCtrl
控件删除多个选中行时问题的解决
只需注意以下一点: /*每删除一行时,删除行之后的行序号会整体前移一位;也就是说,除非从后向前删除,否则会出错。*/ 以下给出两种解决方法: for(int i = m_List.Get
Item
Count
()-1; i >= 0; i--) { if( m_List.Get
Item
State(i, LVIS_SELECTED) ==
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章