专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > C++ Builder

TListView有关问题

发布时间:2011-06-28 12:16:59 文章来源:www.iduyao.cn 采编人员:星星草
TListView问题
以为自己对这个控件有所了解了,今儿个随意测试了个玩意,居然出了问题,百思不得其解,汗颜之,特发出来请大家给与指点。
程序思路如下,表格共有10列,放个定时器每秒钟横向填入一个数字,直至该行填完,然后再增加一行,如此循环:
C/C++ code

void TfrmTest::tmr1Timer(TObject *Sender)
{
  int Row = lv->Items->Count-1;
  TListItem* Item = lv->Items->operator [](Row);
  if( NULL == Item  ) {
       Item = lv->Items->Add(); Item->Caption = "0";
   }
   else {
    int nCount = Item->SubItems->Count;
    if( nCount >= 10 ) {
       Item = lv->Items->Add(); Item->Caption = "0";
    }
   }

   Item->SubItems->Add("1");//问题产生的行, ERROR:List Index out of bounds.
}



------解决方案--------------------
TListItem* Item = lv->Items->operator [](Row);

这一句是啥意思?
------解决方案--------------------
C/C++ code
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
    static int i = 0;

    TListItem *li;

    if (lv->Items->Count > 0)
    {
        li = lv->Items->Item[lv->Items->Count - 1];
    }
    else
    {
        li = lv->Items->Add();
        li->Caption = i++;

        return;
    }

    if (li->SubItems->Count >= 9)
    {
        li = lv->Items->Add();
        li->Caption = i++;
    }
    else
        li->SubItems->Add(i++);
}
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: