CListCtrl和CTreeCtrl中的LVS_OWNERDATA(就是Virtual List Controls模式)怎么使用?

时间:2021-03-20 17:27:44
我在CListCtrl和CTreeCtrl设好了LVS_OWNERDATA以后说是在LVN_GETDISPINFO消息中来设置item和subitem的那些值,象是pszText和iImage等等,但是添加item还是要我自己动手用insertitem来加,有没有什么办法告诉Ctrl我要设置多少个item叫他直接发LVN_GETDISPINFO消息就完了,不要我一次次的用insertitem。  
还有在LVS_OWNERDATA模式下insertitem的参数没有变化,但是除了加入了一个item以外insertitem什么都没干,item的值都是在LVN_GETDISPINFO消息中设置的,insertitem那些参数有什么用呢?  
 
希望有好心人来回答我的问题  
 
谢谢

5 个解决方案

#1


List Ctrl 的 OwnerData 参考 msdn 中的 Virtual List Controls

主要是对 LVN_GETDISPINFO 消息的处理,在这里给出要显示的数据。
因为OwnerData属性指定了使用用户自己的数据所以 InsertItem 之类的函数就没有用处了。

#2


有没有什么办法直接告诉Ctrl我要加入多少个item,反正InsertItem是废了的,摆设而已

#3


CListCtrl::SetItemCount

#4


谢谢。。。:)

#5


谢谢:)

#1


List Ctrl 的 OwnerData 参考 msdn 中的 Virtual List Controls

主要是对 LVN_GETDISPINFO 消息的处理,在这里给出要显示的数据。
因为OwnerData属性指定了使用用户自己的数据所以 InsertItem 之类的函数就没有用处了。

#2


有没有什么办法直接告诉Ctrl我要加入多少个item,反正InsertItem是废了的,摆设而已

#3


CListCtrl::SetItemCount

#4


谢谢。。。:)

#5


谢谢:)