请问关于CB TstringGrid的有关问题
请教关于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属性表示其中的一个格子对象,其余的操作,你懂的。