私のアプリケーションでは、いくつかのグリッド列(完全に行ではない)を異なる色で共同描画する必要があります。TcxGridTableDataCellViewInfo変数から現在の列IDを取得するにはどうすればよいですか?
ありがとう。
私のアプリケーションでは、いくつかのグリッド列(完全に行ではない)を異なる色で共同描画する必要があります。TcxGridTableDataCellViewInfo変数から現在の列IDを取得するにはどうすればよいですか?
ありがとう。
AViewInfo.Item.Index を使用できます。
または、ビューに 1 つのハンドラーを割り当てる代わりに、各列に異なる OnCustomDrawCell ハンドラーを割り当てることもできます。その場合、列を区別する必要はありません。
例:
procedure TFrmBestellingen.grdRequestDBTableCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;AViewInfo:
TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
varValue: Variant;
begin
inherited;
// Which column must i paint: Paint on column <TcxGridDbColumn>
if (AViewInfo.Item.Index = <TcxGridDbColumn>.Index) then
begin
// Get Value to compare if it is 100
varValue:=AViewInfo.GridRecord.Values[<TcxGridDbColumn>.Index];
if (Not VarIsNull(varValue)) and
(varValue=100) then
begin
ACanvas.Font.Style:= [fsBold];
ACanvas.Brush.Color:= clSilver;
end;
end;
end;