/ / cxgrid цвят номера в мрежата с помощта на стилове - delphi, devexpress, tcxgrid

cxgrid цветни номера в мрежата с помощта на стилове - delphi, devexpress, tcxgrid

Бих искал да приложи стил на колона (настил на съдържанието), така че всички номера в тази колона да са в избрания стил. Само номерата, нищо друго.Това означава, че ако се намери номер в текстовата фраза, то ще се оцвети. Това възможно ли е ?

Отговори:

2 за отговор № 1

Сигурен. Използвайте нещо подобно

procedure TForm1.Column1StylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; var AStyle: TcxStyle);
var
i: Integer;
begin
if TryStrToInt(ARecord.Values[Column1.Index], i) then
AStyle := cxStyle1;
end;

0 за отговор № 2

Това е груб код, но трябва да влезете вправилна посока. Мисля, че може да се припокрие малко с рисунката ви на платното, но можете да коригирате там, където е необходимо. Ще трябва да настроите така, че да анализира числата от низовете.

procedure TForm7.cxGrid1TableView1CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
var Bounds : TRect;
begin
Bounds := AViewInfo.Bounds;

ACanvas.Font.Color := clRed;
ACanvas.TextOut(Bounds.Left, Bounds.Top, "123");
Bounds.Left := ACanvas.Canvas.TextWidth("123");

ACanvas.Font.Color := clGreen;
ACanvas.TextOut(Bounds.Left, Bounds.Top, "abc");

ADone := True;
end;