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

请问关于CB TstringGrid的有关问题

2013-11-29 
请教关于CB TstringGrid的问题我用C++ Builder做了个StringGrid,其中存了一个mac地址,例如70763067B7CA,我

请教关于CB TstringGrid的问题
我用C++ Builder做了个StringGrid,其中存了一个mac地址,例如70763067B7CA,我现在想取出这个mac地址,然后做一个加1的运算。这个要怎么做。。各位大神帮帮忙。。。谢谢。
[解决办法]
没人回答……
好吧,用cell属性
说起来,你是怎么把数据放进去的?
[解决办法]
用Cells取出MAC地址,把最后一位字符加1就好了
比如(代码未验证,细节请调整):


AnsiString ss = s1->Cells[3][2];
char * s = ss.AnsiLastChar();
s[0] = s[0]+1;
s1->Cells[3][2] = ss;

[解决办法]
好象还没看明白说什么
错误大概是越界造成的
我猜你大概还没设置StringGrid的总行数和总列数

TStringList *slFile = new TStringList();
  TStringList *slRow = new TStringList();
  try
  {
    slFile->LoadFromFile("D:\\Test.csv");

    StringGrid1->RowCount=slFile->Count+1; //加上
     StringGrid1->ColCount=你的列数;  //修改加上

    for (int i = 0; i < slFile->Count; i++)
    {
      slRow->Delimiter = ',';
      slRow->DelimitedText = slFile->Strings[i];
      for (int j = 0; j < slRow->Count; j++)
      {
          StringGrid1->Cells[j + 1][i] = slRow->Strings[j];
      } // end for (int j = 0; j < slRow->Count; j++)
    }// end for (int i = 0; i < slFile->Count; i++)
  }
  __finally
  {
    slRow->Clear();
    slFile->Clear();
    delete slRow;
    delete slFile;
  }     
[解决办法]
cell属性表示其中的一个格子对象,其余的操作,你懂的。

热点排行