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

StringGrid选中的一行表示?该如何处理

2012-02-12 
StringGrid选中的一行表示?如何让选中的一行都改变颜色(字体),也就是说让选中的Cell所在的一行全部改变颜

StringGrid选中的一行表示?
如何让选中的一行都改变颜色(字体),也就是说让选中的Cell所在的一行全部改变颜色(字体)?



[解决办法]
这个要自己写函数了.不知道怎么写.组件不具有此功能
[解决办法]
drawcell
[解决办法]
void __fastcall TF_dpywz_cx::DBGrid1DrawColumnCell(TObject *Sender,
const TRect &Rect, int DataCol, TColumn *Column,
TGridDrawState State)
{
if(((TDBGrid*)Sender)->DataSource->DataSet->RecNo%2==0)
DBGrid1->Canvas->Brush->Color = clMoneyGreen;
else
DBGrid1->Canvas->Brush->Color = clCream;
if(State.Contains(gdSelected))
DBGrid1->Canvas->Brush->Color = clNavy;
DBGrid1->DefaultDrawColumnCell(Rect,DataCol, Column, State);
}
这是我很早以前做的程序里的一段,你可以看看,应该有所帮助。
[解决办法]
呵呵...把StringGrid的Options属性下的goRowSelect设置为true就行了。

当你选中某一行以后,该行字体就由黑色变为白色了。当然,如果你要变成红色、绿色等等,那就另想办法了。
[解决办法]

热点排行