最近写程序用到列表控件,但是操作的时候用CListCtrl::InsertItem()
得到的每个列的标题总是集中在标题框的最左边,怎么样才能等宽度
显示每列的标题呢?请指教!

解决方案 »

  1.   

    设置CListCtrl属性的时候,加上居中标志.我记得居中好象是VC_CENTER.不太清楚,你查一下MSDN.至于每个文本等长度?不会.
      

  2.   

    你可以查一下资料:http://www.codeproject.com/
    http://www.vckbase.com/
    http://www.codeguru.com/
      

  3.   

    RECT rectscore;
    m_list.GetWindowRect(&rectscore);
    int widscore=rectscore.right-rectscore.left;//得到宽度
    m_list.SetColumnWidth(0,widscore/5);
    m_list.SetColumnWidth(1,widscore/5);
    不用解释了吧?
      

  4.   

    //设置风格
    m_list.SetExtendedStyle(m_list.GetExtendedStyle() |LVIF_IMAGE | LVS_EX_FULLROWSELECT);
    //插入列
    m_list.InsertColumn(0,"From",LVCFMT_LEFT,18);
    //绑定图片列表
    m_list.SetImageList(&imglist,LVSIL_SMALL);
    //设置字体颜色
    m_list.SetTextColor(RGB(0,136,55));
      

  5.   

    m_list.InsertColumn(0,"文件",LVCFMT_CENTER,20);