|
anures
новенький
Сказали спасибо: +0/-0
Offline
Сообщений: 1
|
|
« Ответ #1 : 11 Март 2008, 04:30:08 »
|
|
// Примерно так изменяем цвет и вставляем картинку
void __fastcall TFormMain::FrameList1StringGrid1DrawCell(TObject *Sender,
int ACol, int ARow, TRect &Rect, TGridDrawState State)
{
Graphics::TBitmap* vIm(new Graphics::TBitmap());
AnsiString vTxt = FrameList1->StringGrid1->Cells[ACol][ARow];
if (State.Contains(gdSelected))
{
FrameList1->StringGrid1->Canvas->Brush->Color = 0xEFE3DF; //0xDFEFDF;
FrameList1->StringGrid1->Canvas->Font->Color = clRed;
FrameList1->StringGrid1->Canvas->FillRect(Rect);
FrameList1->StringGrid1->Canvas->TextOutA(Rect.Left+2, Rect.Top+1, vTxt);
}
else
{
FrameList1->StringGrid1->Canvas->TextOutA(Rect.Left+2, Rect.Top+1, vTxt);
}
if (ACol == 0 & ARow != 0)
{
DataModule1->ImageList1->GetBitmap(12,vIm);
// FrameList1->StringGrid1->Canvas->TextOutA(Rect.Left+18, Rect.Top+1, vTxt);
long i = (Rect.Left + Rect.Right - vIm->Width) / 2;
FrameList1->StringGrid1->Canvas->Draw(i, Rect.Top, vIm);
}
if (State.Contains(gdFocused))
{
DataModule1->ImageList1->GetBitmap(3,vIm);
long i = (Rect.Left + Rect.Right - vIm->Width) / 2;
FrameList1->StringGrid1->Canvas->Draw(i, Rect.Top, vIm);
}
|