ここに投稿された例を出発点として取り組みました: Firemonkey TGrid で TTextCell の背景を変更する
画像を参照する textcellstyle を作成しましたが、これはうまく機能しています。プログラムを実行すると、すべてのセルに期待どおりの背景画像が表示されます。
上記のリンクから、Mike Sutton (あなたがこれを読んでくれていることを願っています。あなたの意見がなかったらどうしよう!) は次のように書いています (簡単にするためにここで繰り返します):
「次に、各セルの 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;
これを行う方法についての助けをいただければ幸いです。