A tcxgrid cellák tartalmának színezése és megváltoztatása (a dev express-ből)

Delphi. Összetevők és osztályok. TStringGrid és TDrawGrid

eljárás TDirectoryClientsListContracts.grClientsCodeDBTableView1CustomDrawCell (Feladó: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: logikai); // telepítse a következő kezelőt a TcxGrid CustomDrawCell-jére
var
lTextToDraw. string;
lColFont. Tfont-ot;
kezdődik
lColFont: = ACanvas.Font; // mentse az aktuális cella alapértelmezett betűtípus-beállításait

lTextToDraw: = trim (AViewInfo.GridRecord.DisplayTexts [5]); // olvassa el az 5. oszlop tartalmát, az oszlopot hozzá kell adni a TcxGrid táblához, de előfordulhat, hogy nem látható
ha lTextToDraw = 'Igaz' akkor lColFont.Style: = [fsItalic]; // ellenőrizze az olvasó cella értékét, és dőlt betűket állítson be

lTextToDraw: = trim (AViewInfo.GridRecord.DisplayTexts [6]);
ha lTextToDraw = "False", akkor lColFont.Color: = clRed; // ellenőrizze az olvasó cella értékét, és piros színben tüntesse fel

ACanvas.Font: = lColFont; // állítsa be az eredményt a teljes sorra

if ((AViewInfo.Item.Index = 4) és (trim (AViewInfo.GridRecord.DisplayTexts [4]) = '30 .12.1899 „)), akkor // ha megnézzük a 4. oszlopban, hasonlítsa össze a tartalmát nulla időpont
kezdődik
ACanvas.Canvas.FillRect (AViewInfo.Bounds); // kívánság szerint megváltoztathatjuk a cella formázását a korábban leírtak szerint, de hagyjuk a karakterlánc formázását
ACanvas.DrawText ('-', AViewInfo.Bounds, 0); // kimenet a nulla dátum helyett "-" (mínusz)
ADone: = Igaz; // írjuk át újra a cella értékét
végén;

Hasonlóképpen, a standard TStringGrid és a TBDGrid is működik.