baidu_27151571 2015-04-21 05:08 采纳率: 0%
浏览 1452

求大神帮我看看关于列表的问题

我小白,做毕业设计有点问题想向大家请教。图片说明这个是我想要的效果,我现在做的是这样的图片说明第一张图片是我想要的效果,第二张是我现在的情况。现在的问题是前面的序号不会累加全是1,还有就是我分隔的内容是两个7E之间的内容,但是第一个7E和最后一个出现上图的问题。谢谢帮忙解答下。
代码如下,
void CTest3Dlg::OnRead()
{
// TODO: Add your control notification handler code here
UpdateData(); //将界面的数据更新到对应的变量中
char buf;
CString str;
GetDlgItem(IDC_EDIT1)-> GetWindowText(str); //读取码流到str字符串中
str.Replace(_T("7E"),_T("H")); //将码流字符串中的7E替换为H
buf= new char[str.GetLength()+1]; //将char
转换为buf[]
memset(buf, 0, str.GetLength()+1); //buf[]初始化
strcpy(buf, str); //buf[]赋值

CString StrNum; // 列表控件的行标
CString strItem; //向控件中插入的字符串内容
int i=1;

char *seps="H"; //分隔符'H'
char *token=NULL;
token=strtok(buf,seps); //以'H'为分隔符分割字符串buf
while(token!=NULL)
{

strItem.Format ("%s%s%s","7E",token,"7E");
token=strtok(NULL,seps);
StrNum.Format(_T("%d"),i); //将整形变量i以字符型输出
int count=m_list.GetItemCount(); //获取列表控件当前存在的数据总量
m_list.InsertItem(count,StrNum); //插入一行
m_list.SetItemText(count,1,strItem); //为第一列插入字符串
}

}
后面的是list的代码
m_list.InsertColumn(0, _T("序号"), 60);
m_list.InsertColumn(1, _T("各个信令单元"), 100);
m_list.SetColumnWidth(0, 50);//设置列宽

m_list.SetColumnWidth(1, 300);

更多

0

  • 写回答

4条回答 默认 最新

  • VincentWong800 2015-04-21 05:59
    关注

    char buf; //这个只能存储1个字符!!应该改成数组吧
    char buf[1000];

    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大