你是如何得出这个结论的?
1.在DrawItem设断点一直查看lpStruct->itemID
2.从运行结果中看出从第二项开始绘制如果是1,似乎不太准确,因为程序的绘制可能不是有序的;如果是2,可能是你对lpStruct->itemID做了什么运算

解决方案 »

  1.   


    我是在DrawItem中对itemID进行输出的.
    只要是在下拉的时候, 正常情况都是要从0开始的, 毕竟下拉框出来, 所有项都应该重绘才对.
    我未对itemID作任何的变换.
    我输出的所有项的, 即使顺序不一样, 也应该能全部输出, 结果是第0项消失了.只有再次重新拉出下拉框才能全部显示.
      

  2.   

    使用排除法, 终于是找到原因了.不知道这算不算组合框的一个坑哈原因: 我自己处理了WM_WINDOWPOSCHANGED这个消息.
    解决办法: 即是让这个消息继续传递, 让组合框对这个消息进行默认处理.不知道组合框用这个消息做了些什么.