List Control的ItemChange消息

本文详细探讨了在MFC中使用CListCtrl时,LVN_ITEMCHANGED和LVN_ITEMCHANGING消息的触发情况。这些消息不仅在Item被Select时产生,还包括状态和数据变化。通过分析消息序列,指出在处理这些消息时需要注意的细节,如状态转换的原子性、重复行为的过滤以及可能出现的问题和解决方案。
摘要由CSDN通过智能技术生成

在使用MFCCListCtrl时,用得最多的就是LVN_ITEMCHANGEDLVN_ITEMCHANGING两个消息了,它们通常都是成对出现。可是,我们经常认为只有Select一个Item时才会产生这两个消息。其实,这两个消息的意思是某个item发生了变化,包括:状态变化和数据变化。其中,状态变化通常是由SetItemState引起的,数据变化是由SetItemData引起的。消息的数据封装在NMLISTVIEW结构中。对于SetItemData,该结构中的state成员均为0。另外,DeleteItem会引发LVN_ITEMCHANGING消息(但不会引发LVN_ITEMCHANGED消息),此时,state

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值