اخواني الأعزاء في المنتدى السلام عليكم ورحمة الله وبركاته
أثناء تجولي بالمنتدى لا حظت اهتمام عدد من الزوار والسائلين بالمكون dbgrid فمنهم من يطلب نسخة مطورة منه و منهم من يشتكي من عدم نجاح تصيب نسخة مطورة. وحق لهم ذلك لأن هذا المكون له أهمية كبيرة في تسهيل استغلال المستخدم لبرنامجك.
لكن مهما يكن من شيء فأني فكرت في طرح موضوع من أجل أن نبدأ في اضفاء جميع ما نستطيعه من تحسينات عليه حتى يخرج في أبهى حلة.( برمجيا و لا نريد مكونات خارجية)
كيف يتم ذلك ؟
سأطرح أنا أول البرنامج من أجل أن يتعامل معه الآخرون .ثم من كان له أي تعديل فليضفه وليستشرنا.
يحق لمن وضع شيئا جديدا أن يضع اسمه بعده طبعا مسبوقا بـ ://
من قام بالتعديل فعليه أن تكون مشاركته هكذا:
1- مضمون التعديل:
2-شفرة التعديل : ( حتى يتسنى للضيوف الاطلاع عليها)
ملاحظة هامة: لا تعديل الا على النسخة الأخيرة حتى لا نرجع للوراء. ولا مشاركات بدون مرفق معدل من فضلكم. ولا للمشاركات المبهمة
______________________
نقول بسم الله.
مضمون التعديل: جعل ألأسطر بألوان مختلفة من أجل مقروئية أحسن.
شفرة التعديل :
ضع في:
implementation type AlternGrid = class(TCustomDBGrid);
ثم أ كتب هذه الشيفرة :
procedure TFMateriel.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var dataset:Tdataset; begin dataset:= (Sender as TDBGrid).DataSource.DataSet; with AlternGrid(Sender) do begin if (DataSet.RecNo mod 2 = 1 ) then Canvas.Brush.Color :=$00EBFEFB else Canvas.Brush.Color :=$00E7ECCA; if DataLink.ActiveRecord = Row -1 then begin Canvas.Font.Color:=clwhite; Canvas.Brush.Color:=clblack; end; end; DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column, State); end;
هذه خطوة أولى وهناك العديد مما سيأتي بشرط التجاوب.
تحياتي.....
