你只是设置了CListCtrl的最大行数,可你并没可往里面加上这么多的行数呀。
当你往CListCtrl里面加上了1000行时,你的m_list.GetItemCount()才会有ret == 1000

解决方案 »

  1.   

    GetItemCount返回的是列表框中的实际行数。应该先添加一些行,然后再得用这个函数来获取行数。
      

  2.   

    不对,和实际行数没关系。我曾看过书上的一段代码,代码如下,我调试发现这段代码就可以设置行数
    long count = GetRecordCount();//Get number of records
    GetListCtrl().SendMessage(LVM_SETITEMCOUNT, (WPARAM)count, (LPARAM)LVSICF_NOSCROLL   );
    int ret=GetListCtrl().GetItemCount();
      

  3.   

    我的数据量非常大,我希望先装如一页数据,虽然只有一页数据,但是滚动条的大小和1000条记录时一致,给用户的感觉是已经全部装入CListCtrl
      

  4.   

    SetItemCount只对虚列表有用。看看你是否设置了LVS_OWNDERDATA风格。