Hola colegas, les comparto el día de hoy un procedimiento el cual sirve para cambiar el color del Header del stringGrid en FireMonkey
Código Delphi
[-]procedure ColorFondoHeaderStringGrid(ObjetoGrid: TStringGrid);
var
i: integer;
Header: THeader;
RecColor: TRectangle;
Texto: TText;
Obj: TFmxObject;
Headerlbl:TLabel;
begin
Header := THeader(ObjetoGrid.FindStyleResource('Header'));
if Assigned(Header) then
begin
for i := 0 to ObjetoGrid.ColumnCount do
begin
Obj := Header.Items[i];
if Assigned(Obj) then
begin
RecColor := TRectangle.Create(Obj);
Obj.AddObject(RecColor);
RecColor.Fill.Kind := TBrushKind.Solid;
RecColor.Fill.Color:= $FF353784;
RecColor.Stroke.Color := $FF353784;
RecColor.Align := TAlignLayout.Contents;
RecColor.HitTest := False;
RecColor.SendToBack;
if Assigned(Obj.FindStyleResource('Text')) then
begin
Texto := TText(Header.Items[i].FindStyleResource('Text'));
Texto.Visible:= False;
Headerlbl:= TLabel.Create(RecColor);
Headerlbl.Parent:= RecColor;
Headerlbl.Align:= TAlignLayout.Client;
Headerlbl.HitTest:= False;
Headerlbl.StyledSettings:= [];
Headerlbl.Text:= Texto.Text;
Headerlbl.FontColor:= TAlphaColors.White;
Headerlbl.Font.Size:= ObjetoGrid.TextSettings.Font.Size;
Headerlbl.TextAlign:= TTextAlign.Center;
end;
end;
end;
end;
end;
Espero y les sea de ayuda saludos.