ClistCtrl,不能显示数据

本文详细介绍了在VC6.0环境下,使用CListCtrl控件进行数据绑定时遇到的问题及解决方案。当尝试直接更改控件类型时,可能会导致视图与类不匹配的问题。通过删除原有控件并重新创建,最终解决了数据无法正常显示的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在修改一个项目,因为一个ClistCtrl控件,原作者使用的是自定义的CMyListCtrl,与之对应。

该类直接指定记录集,即可和list控件绑定数据。

但由于修改的结果使得必须在该记录集内,晒取数据(根据该记录集内字段的信息晒取),所以修改sql不能满足需要。

但一切修改完之后,导致数据无法显示在控件内。最后新建工程验证数据

CListCtrl m_ctrlList;

m_ctrlList.InsertColumn( 0, "用户编号", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 1, "卡号", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 2, "卡类", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 3, "车型", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 4, "固定车位", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 5, "时段", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 6, "有效日期", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 7, "车牌", LVCFMT_LEFT,80, 0 );
m_ctrlList.InsertColumn( 8, "状态", LVCFMT_LEFT,80, 0 );

m_ctrlList.InsertItem(0,"");
m_ctrlList.SetItemText(0,0,"852");
m_ctrlList.SetItemText(0,1,"222"); 
m_ctrlList.SetItemText(0,2,"2225");
m_ctrlList.SetItemText(0,3,"222");
m_ctrlList.SetItemText(0,4,"225");
m_ctrlList.SetItemText(0,5,"1236");
m_ctrlList.SetItemText(0,6,"222");
m_ctrlList.SetItemText(0,7,"22");
m_ctrlList.SetItemText(0,8,"555");

确实没有问题。能够显示在界面上。

随后,想删除该变量重新建立一个变量与之对应。结果发现问题:

vc 视图和类对应不上了,对资源新建变量,需要重新创建新类。天哪。没天理。

原来直接把变量 CMyListCtrl m_ctrlList; 类型改为CListCtrl m_ctrlList; 并不能使该变量和控件对应。

删除了。.clw和.ncb都不行。

最后将该控件删除了,重新拖了一个控件,问题解决了(变量名称不变)。但是类文件和资源依然对不上,后面有大哥说是VC6.0的bug

晕啊。这个VC难道真老去了。以今天的眼光看,真该淘汰了....

太烂了.....

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值