CListCtrl 使用Icon 模式
希望通过调用SetItemPosition 来调整每个item的位置,当没有上下滚动条时,是正常的。
但是添加的item多了之后,就有了上下滚动的滚动条,这时候首行和控件顶部的距离,明显不是自己设置的距离,这是为什么呢?为什么呢,为什么呢!!!

解决方案 »

  1.   

    没贴过icon,但是贴过checkbox。
    出现滚动条之后,在滚动条的响应函数里面,调用GetTopIndex获取当前可见的最顶上的item索引,然后通过MoveWindow移动icon,对于可见的要调用EnableWindow(TRUE),不可见的要调用EnableWindow(FALSE),否则的话系统判断当前选中项会出错。
      

  2.   

    void SetWorkAreas( int nWorkAreas, LPRECT lpRect );
      

  3.   

    楼上的哥,SetWorkAreas也试过了啊,现在准备试一下自绘