list control不显示数据问题

当从数据库查询并在list control中显示时,没有显示数据,通过调试发现已经从数据库中获得所查询的记录值,但就是不在listcontrol中显示。问题在于SetItemText()之前没有进行InsertItem(),所以在每次进行SetItemText()应该先InsertItem()一行或多行。代码如下:

CDataBase::Open();
 pRecordset=CDataBase::Query(strsql);
 int index=0;
 CString m_ID,m_name,m_title,m_department;
 while(!pRecordset->adoEOF)
 {

  m_doctorlist.InsertItem(index,_T(""));//先插入一列,然后才设置内容
  _variant_t var=pRecordset->GetCollect("医生编号");
  if(var.vt!=VT_NULL)
   m_ID=(LPCSTR)_bstr_t(var);
  //AfxMessageBox(m_ID);
  var=pRecordset->GetCollect("医生姓名");
  if(var.vt!=VT_NULL)
   m_name=(LPCSTR)_bstr_t(var);
  //AfxMessageBox(m_name);
  var=pRecordset->GetCollect("职称");
  if(var.vt!=VT_NULL)
   m_title=(LPCSTR)_bstr_t(var);
  var=pRecordset->GetCollect("科室");
  if(var.vt!=VT_NULL)
   m_department=(LPCSTR)_bstr_t(var);

  m_doctorlist.SetItemText(index,0,m_ID);//index为行,0为列
  m_doctorlist.SetItemText(index,1,m_name);
  m_doctorlist.SetItemText(index,2,m_title);
  m_doctorlist.SetItemText(index,3,m_department);
  index++;

  pRecordset->MoveNext();
 }

 CDataBase::Close();

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值