dbGRID隔行显示不同颜色问题
「已注销」 2008-08-29 06:51:42 虽然是老问题,但是大家似乎都忽略了一个问题,if(dbgrd1->DataSource->DataSet->RecNo%2),在用RecNo判定时,只对特定数据库有用,所以对于SQL,根本没有用,也不会看到隔行显示的结果,,在SQL中建立id字段,此句改为 if(Query1->FieldByName("id")->AsInteger%2),就解决问题啦!完整代码如下:
if(Query1->FieldByName("id")->AsInteger%2)//关键语句
{
suiDBGrid1->Canvas->Brush->Color=0x00FFF5E8;
suiDBGrid1->Canvas->Font->Color=clBlack;
}
else
{
suiDBGrid1->Canvas->Brush->Color=0x00E8E8E8;
suiDBGrid1->Canvas->Font->Color=clBlack;
}
suiDBGrid1->DefaultDrawColumnCell(Rect,DataCol,Column,State);