我将此处发布的示例作为我的起点:Change background of TTextCell in a Firemonkey TGrid
我创建了一个引用图像的 textcellstyle,并且效果很好。当我运行程序时,所有单元格都按预期显示背景图像。
从上面的链接,迈克萨顿(我希望你正在阅读这篇文章,如果没有你的输入,我们会怎么做!)写道(在这里重复只是为了更容易):
“然后,您可以设置每个单元格的 StyleLookup 属性以使用它,或者将样式 StyleName 设置为 TextCellStyle 以便为每个 TTextCell 自动拾取它。”
继关于更改字体颜色的查询(Delphi XE4 Firemonkey Grid Control - Styling cells individual)之后,也可以动态设置背景颜色吗?
我创建单元格的代码:
Constructor TFinancialCell.Create(AOwner:TComponent);
begin
inherited;
StyleLookup:='textcellstyle';
StyledSettings:=StyledSettings-[TStyledSetting.ssStyle,TStyledSetting.ssFontColor];
TextAlign:=TTextAlign.taTrailing;
end;
这将我的图像成功应用于 TFinancialCell。
但是,根据字体颜色查询,我希望仅在达到某个值或其他任何值时才显示图像背景:
Procedure TFinancialCell.ApplyStyling;
begin
Font.Style:=[TFontStyle.fsItalic];
If IsNegative then
FontColor:=claRed
else
FontColor:=claGreen;
If IsImportant then Font.Style:=[TFontStyle.fsItalic,TFontStyle.fsBold];
If Assigned(Font.OnChanged) then
Font.OnChanged(Font);
Repaint;
end;
任何有关如何执行此操作的帮助将不胜感激。