我用CListCtrl类创建了5列,现在我由于第5列里面的内容太长,所以我想将第5列的内容分两行显示出来,但是弄了半天第二行的内容始终都没显示到第5列,而是显示到了第一列,请问怎么让第二行的内容显示在第5列?

解决方案 »

  1.   

    list.InsertItem(n+1,"STR"); list.SetItemText(n+1,4,"other str");
      

  2.   

    ctlList.InsertColumn(j,fieldinfo.m_strName,LVCFMT_LEFT,nWidth);
    }
      

  3.   

    m_List.InsertItem (0,text1);//写第一列;
    m_List.SetItemText (0,1,text2);//第二列;
    m_List.SetItemText (0,2,text3);//第三列;
    m_List.SetItemText (0,3,text4);//第四列;
    m_List.SetItemText (0,4,text5);//第五列;
      

  4.   

    int iLine = m_ListCtrl.InsertItem ( 0, "第一列" );
    m_ListCtrl.SetItemText ( iLine, 1, "第二列");
    m_ListCtrl.SetItemText ( iLine, 2, "第三列");
    ...
      

  5.   

    你会不会是把其属性中的"sort"选中了,那么如果你所添加的项目将按照字母顺序排列。去掉也许能解决这个问题!
    如果没有选,按上面的方法解决就行了!
      

  6.   

    m_List.InsertItem (0,text1);//写第一列;
    m_List.SetItemText (0,1,text2);//第二列;
    m_List.SetItemText (0,2,text3);//第三列;
    m_List.SetItemText (0,3,text4);//第四列;
    m_List.SetItemText (0,4,text5);//第五列;
      

  7.   

    m_List.SetItemText (0,4,text5);//第五列;确实能够将内容加在第五列,但是现在的问题不是这个,而是我的第五列原本就有内容,我要将添加的内容放到第五列的第二行去。
      

  8.   

    m_List.SetItemText (0,4,text5);//第五列;确实能够将内容加到第五列,但是我现在的问题是要将添加的内容放到第五列的第二行:(效果如下)col1    col2    col3    col4    col5
    ...     ....    ....    ....    .......................
                                    .......................
    ...     ....    ....    ....    .......................
                                    .......................
      

  9.   

    呵呵,建议你用这种办法:
                      LVITEM item;
    item.iItem=iCnt; //iCnt是行序号
    item.mask=LVIF_TEXT; item.iSubItem=0;
                      ...
    m_QryList.InsertItem(&item); //m_QryList就是那个ListCtrl

    item.iSubItem=1;
    ...
                      m_QryList.SetItem(&item); item.iSubItem=2;
    ...
                      m_QryList.SetItem(&item); item.iSubItem=3;
    ...
                      m_QryList.SetItem(&item);            item.iSubItem=4;
    ...
                      m_QryList.SetItem(&item);               item.iSubItem=5;
    ...
                      m_QryList.SetItem(&item);             item.iSubItem=5;
    ...
                      m_QryList.SetItem(&item);到第二行的时候把空字符串填到前四列就行了