delphi4arab منتديات دلفي للعرب
كيف تلوين مكون Tntdbgrid - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف تلوين مكون Tntdbgrid (/showthread.php?tid=4736)



كيف تلوين مكون Tntdbgrid - you_per7 - 21-11-2012

هل توجد طريقة تمكنني من تلوين Tntdbgrid
فكل الأكواد التي جربتها تعمل فقط على dbgrid الافتراضية


كيف تلوين مكون Tntdbgrid - you_per7 - 21-11-2012

بعد التعديل على الكود الذي وضعه الأخ delphi4ever في موضوع مستقل....نجحت العملية


أولا
نقوم بزيادة السطر التالي مباشرة تحت


كود :
{$R *.dfm}

كود :
type AlternGrid = class(TtntCustomDBGrid);
ثم نذهب إلى الحدث OnDrawColumCell الخاص بالمكون TNTDbGridt ونكتب الكود التالي:
كود :
var dataset:Tdataset; myColumn: TTntColumn; begin myColumn := Column as TTntColumn; dataset:= (Sender as TtntDBGrid).DataSource.DataSet; with AlternGrid(Sender) do begin if (DataSet.RecNo mod 2 = 1 ) then Canvas.Brush.Color := $00E6D9C4 else Canvas.Brush.Color := $00EAF7FF; if DataLink.ActiveRecord = Row -1 then begin Canvas.Font.Color:=clwhite ; Canvas.Brush.Color:=clblack; end; end ; tntDBGrid1.DefaultDrawColumnCell(Rect,DataCol,myColumn, State);