现在我做了一个socket抱的程序,想把的来得数据以列表的形式表现出来。在单文档的工程中,数据我已经提取了出来,可列表的问题却没有解决。请问怎么在单文档的工程中建个列表(多列的)。
请分析一下我做的过程是不是那里不对:1 在单文档中建个对话框的类(整个对话框只有一个列表,style 为report,定义了一个clistctrl的变量m_list)2没有初始化函数,我加了一个,3我试了两段代码 调试都可以通过,但无法运行~~!请高手看看我的问题出在那里,该如何解决代码为别如下:
(1)<变量为m_clistctrl>  {之前有结构定义}
LV_ITEM lvitem;LV_COLUMN lvcol;int i,iPos,iItemNum;lvcol.mask=LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;lvcol.fmt=LVCFMT_CENTER;//居中i=0;lvcol.pszText="品 名";lvcol.iSubItem=i;lvcol.cx=70;m_ListCtrl.InsertColumn(i++,&lvcol);lvcol.pszText="数 量";lvcol.iSubItem=i;lvcol.cx=70;m_ListCtrl.InsertColumn(i++,&lvcol);lvcol.pszText="单 价";lvcol.iSubItem=i;lvcol.cx=70;m_ListCtrl.InsertColumn(i++,&lvcol);lvcol.pszText="金 额";lvcol.iSubItem=i;lvcol.cx=70;m_ListCtrl.InsertColumn(i++,&lvcol);//向列表控制中添加表项iItemNum=sizeof(Sps)/sizeof(SPS);for(i=0;i<iItemNum;i++){lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_PARAM;lvitem.iItem=i;lvitem.iSubItem=0;lvitem.pszText=Sps[i].szPm;lvitem.iImage=Sps[i].Lx;lvitem.lParam=i;iPos=m_ListCtrl.InsertItem(&lvitem);//返回表项插入后的索引号lvitem.mask=LVIF_TEXT;lvitem.iItem=iPos;lvitem.iSubItem=1;lvitem.pszText=Sps[i].szSl;m_ListCtrl.SetItem(&lvitem);lvitem.iSubItem=2;lvitem.pszText=Sps[i].szDj;m_ListCtrl.SetItem(&lvitem);lvitem.iSubItem=3;lvitem.pszText=Sps[i].szJe;m_ListCtrl.SetItem(&lvitem);}
return TRUE; // return TRUE unless you set the focus to a control}
(2)《变量为m_list》
m_list.InsertColumn(0,"用户ID");     //插入列
         m_list.InsertColumn(1,"用户姓名");
m_list.InsertColumn(2,"手机号码");
m_list.InsertColumn(3,"帐户余额"); RECT rect;                           //设置各列宽
m_list.GetWindowRect(&rect);
int wid=rect.right-rect.left;
m_list.SetColumnWidth(0,wid/4);
m_list.SetColumnWidth(1,wid/4);
         m_list.SetColumnWidth(2,wid/4);
    m_list.SetColumnWidth(3,wid/4); m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT);//设置风格