2

助けが必要..私はdelphi 10.1 berlinを使用しています。Embarcadero Delphy Code Gear の他の以前のバージョンとはいくつかの違いがあります。TGrid の行のフォントの色を変更する必要があります。この次のコードでは、背景色を変更しますが、フォントの色のみを変更する必要があります:

  aRowColor.Color := arSTATUS_GRID_COLOR[0];
  Canvas.FillRect(Bounds, 0, 0, [], 1, aRowColor);
  Column.DefaultDrawCell(Canvas, Bounds, Row, Value, State);
4

1 に答える 1

4

を呼び出す代わりに、グリッドイベントでColumn.DefaultDrawCell()使用できます。FMX.Graphics.TCanvas.FillText()OnDrawColumnCell()

ドキュメントには詳細が説明されていますが、要点は、Canvas.Fill.Color呼び出す前に目的の色に設定することですCanvas.FillText()

サンプルコード:

procedure TForm28.Grid1DrawColumnCell(Sender: TObject; const Canvas: TCanvas;
  const Column: TColumn; const Bounds: TRectF; const Row: Integer;
  const Value: TValue; const State: TGridDrawStates);
begin
  case Row of
    0: Canvas.Fill.Color := TAlphaColors.Red;
    1: Canvas.Fill.Color := TAlphaColors.Blue;
    2: Canvas.Fill.Color := TAlphaColors.Green;
    3: Canvas.Fill.Color := TAlphaColors.Blueviolet;
  end;
  Canvas.FillText(Bounds, Value.AsString, false, 1, [], TTextAlign.Leading, TTextAlign.Center);
end;

そして、それはどのように見えるか:

ここに画像の説明を入力

于 2016-10-11T11:41:58.267 に答える