Как изменить цвет строки в DBGrid (исходники)Источник: ИСХОДНИКИRU
Компилятор: C++ Builder Этот пример демонстрирует, как изменить фоновый цвет определённых строк, а точнее выделяет все строки, содержащие South America жёлтым цветом. void __fastcall TForm1::DBGrid1DrawColumnCell(TObject *Sender, const TRect &Rect, int DataCol, TColumn *Column, TGridDrawState State) { TDataSet *dataset = Column->Field->DataSet; // Если страна из Южной Америки, то выделяем её жёлтым if(dataset->FieldByName("Continent")->AsString == "South America") { DBGrid1->Canvas->Brush->Color = clYellow; } // Если ячейка выбрана, то делаем текст красным и жирным if(State.Contains(Grids::gdSelected)) { DBGrid1->Canvas->Font->Color = clRed; DBGrid1->Canvas->Font->Style = TFontStyles() << fsBold; } DBGrid1->DefaultDrawColumnCell(Rect, DataCol, Column, State); } |