首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

【请问】List Control 不同列插入的数值行数不一样的有关问题

2012-01-15 
【请教】List Control 不同列插入的数值行数不一样的问题请教高手如何在ListControl不同列插入的数值行数不

【请教】List Control 不同列插入的数值行数不一样的问题
请教高手如何在List   Control不同列插入的数值行数不一样?

我是这样做的:
    前两列插入10行数据,后两行插入20行数据,
                    LV_COLUMN   lvc;
lvc.pszText=_T( "序号 ");
lvc.mask=LVCF_TEXT|LVCF_WIDTH|LVCF_SUBITEM|LVCF_FMT;
lvc.fmt=LVCFMT_CENTER;
m_ListCtrl.InsertColumn(0,&lvc);
m_ListCtrl.SetColumnWidth(0,50);

lvc.pszText=_T( "数组1 ");
lvc.mask=LVCF_TEXT|LVCF_WIDTH|LVCF_SUBITEM|LVCF_FMT;
lvc.fmt=LVCFMT_CENTER;
m_ListCtrl.InsertColumn(1,&lvc);
m_ListCtrl.SetColumnWidth(1,50);

lvc.pszText=_T( "序号 ");
lvc.mask=LVCF_TEXT|LVCF_WIDTH|LVCF_SUBITEM|LVCF_FMT;
lvc.fmt=LVCFMT_CENTER;
m_ListCtrl.InsertColumn(2,&lvc);
m_ListCtrl.SetColumnWidth(2,60);


lvc.pszText=_T( "数组2 ");
lvc.mask=LVCF_TEXT|LVCF_WIDTH|LVCF_SUBITEM|LVCF_FMT;
lvc.fmt=LVCFMT_CENTER;
m_ListCtrl.InsertColumn(3,&lvc);
m_ListCtrl.SetColumnWidth(3,60);
               

                    for(i=0;i <10;i++)
                    {
                        m_ListCtrl.InsertItem(i,_T( " "));
                        str.Format(_T( "%d "),i+1);
      m_ListCtrl.SetItemText(i,0,str);
      str.Format(_T( "%f "),X[i]);
      m_ListCtrl.SetItemText(i,1,str);
                     
                    }
                   
                    for(i=0;i <20;i++)
                    {
                        m_ListCtrl.InsertItem(i,_T( " "));
                        str.Format(_T( "%d "),i+1);
      m_ListCtrl.SetItemText(i,2,str);
      str.Format(_T( "%f "),Y[i]);
      m_ListCtrl.SetItemText(i,3,str);
                     
                    }

运行后得到的前两列和后两列的数据排列的乱七八糟的,并不是我想要的前两列是10行数据,后两列是20行数据!!
请教高手如何解决??
                 




[解决办法]
CListCtrl首先支持行,然后支持列。所以不能说不同的列不同行,应该按照最多的行来安排,但是可以在某些行中的某些列设置空白的内容。否则,还是自己绘制数据方便了。

热点排行