所以我从CListbox派生了我的列表框,将资源样式设置为我得到的演示项目(HASSTRINGS,OWNERDRAW - VARIABLE,NO SORT)。
列表框填充,绘制OK,TRACE语句为我绘制每个项目的指针值。
直到我滚动。
在我滚动可见列表底部的项目之前,跟踪为(20是lpDrawItemStruct-> itemID)
MyClass::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) ...
20 - 0x036f3d90 {m_Event = {size = 658} m_ListName = ...
滚动后我处理的第一个DrawItem事件
20 - 0x0127d248 {m_Event = {size = 1073736252} m_ListName = m_ImageName = ...} - 评估已中止,因为发生了未处理的异常。
为什么指针不同?
它不需要滚动来重现这个问题,选择也是如此。
那里有任何明亮的火花可以告诉我该找什么?