![]() |
|
تفنـن في DBGrid - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : دروس دلفي للمبتدئين (https://delphi4arab.net/forum/forumdisplay.php?fid=13) +--- الموضوع : تفنـن في DBGrid (/showthread.php?tid=2170) |
تفنـن في DBGrid - Lam.Abdeldjalil - 10-07-2010 السلام عليكم
لتجميل DBgrid القديم الذي إذا رأيته تتذكر الويندووز 98 و لجعله يأخذ تيم الويندووز XP في XP و يأخذ تيم الويندووز Win7 فيWin7 كما في الصورة ![]() إليكم الطريقة : - من دلفي 7 إلى 2007 الشروط : * وجود XPManifest * إضف إلى مشروعك الملف المرفق أسفل ThemedDBGrid.pas الرابط الأصلي للملف : كود : http://cc.embarcadero.com/item/24513تلوين سطر بسطر : كود : [align=left]if not(gdSelected in State) then begin
if ADOTable1.RecNo mod 2 =0 then
DBGrid1.Canvas.Brush.Color := $00C6FFFF // لون السطر 1
else DBGrid1.Canvas.Brush.Color := $00B7FBD2; // لون السطر 2
end
else begin
DBGrid1.Canvas.Font.Color := clBlack; // لون خط السطر المختار
DBGrid1.Canvas.Brush.Color := $00FFDFDF; // لون السطر المختار
end;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
[/align]- دلفي 2010 لا داعي لإضافة الملف لأنه خاصيات جديدة كود التلوين سطر بسطر : كود : [align=left]if not(gdSelected in State) then begin
if ADOTable1.RecNo mod 2 =0 then
DBGrid1.Canvas.Brush.Color := $00C6FFFF // لون السطر 1
else DBGrid1.Canvas.Brush.Color := $00B7FBD2; // لون السطر 2
end;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
[/align]أنظر الصورة : ![]() هذه الطريقة تعطينا النتيجة السابقة و للتلوين المتدرج ( عدم استعمال XPManifest لتظهر النتيجة ) ![]() تصبح النتيجة ![]() و السلام عليكم
تفنـن في DBGrid - khiro.alg - 11-07-2010 جميل جدا أخي بارك الله فيك لكنك إستعملت مكونات.. تفنـن في DBGrid - kachwahed - 13-07-2010 وعليكم السلام ورحمة الله وبركاته ThemedDBGrid تعديل على المكون الأصلي TDBGrid لمبرمج ألماني andy يستخدم تقنية Interjected class لاحظ: PHP كود : TDBGrid = class(DBGrids.TDBGrid) // keep TDBGrid.ClassName = 'TDBGrid' كود : http://andy.jgknet.de/blog/?page_id=206تفنـن في DBGrid - Lam.Abdeldjalil - 14-07-2010 السلام عليكم أود أن أشكر الأستاذ kachwahed على المعلومات إسمح لي ببعض الإضافات قبل أن تضع عليها لمساتك * لوضع زر ... في الـ DBGrid كما في الصورة ![]() هذه هي الطريقة إضغط مرتين على الـ DBGrid ثم أكمل كما في الصورة ![]() و للتحكم في هذا الزر بواسطة الحدث DBGrid1EditButtonClick في الـ DBGrid يستخدم للتعديل مثلا لإظهار الفورم الخاصة بالتعديل كود : procedure TForm1.DBGrid1EditButtonClick(Sender: TObject);
begin
Form2.showmodal;
end;* للترتيب حسب العنوان المضغوط دون إستعمال SQL أكتب هذا الكود كود : procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
if ADODataSet1.IndexFieldNames = Column.Field.FieldName then
ADODataSet1.IndexFieldNames := Column.Field.FieldName + ‘ DESC’
else
ADODataSet1.IndexFieldNames := Column.Field.FieldName
end;* لمعرفة عدد الحقول المختارة ووضعها في label1 كود : label1.Caption :=inttostr(DBGrid1.SelectedRows.Count) ;تفنـن في DBGrid - Lam.Abdeldjalil - 09-08-2010 السلام عليكم كثيرا ما نحتاج لحفظ خصائص أعمدة الـ DBGrid بعد التعديل عليها أثناء تشغيل البرنامج مثل : تعديل عرض العمود / اللون / العنوان / الإظهار و الإخفاء لحفظ خصائص أعمدة الـ DBGrid نستعمل فقط هذا الكود ( يستعمل مثلا عند الخروج من الفورم ) كود : dbgrid1.Columns.SaveToFile('Filename');لجلب خصائص أعمدة الـ DBGrid المحفوظة سابقا نستعمل فقط هذا الكود ( يستعمل مثلا عند إظهار الفورم أو عند إنشائها ) مع إضافة شرط بسيط للتأكد من أن الملف موجود و لاتخرج لنا رسالة خطأ في حالة عدم وجوده كود : if FileExists('Filename') then
dbgrid1.Columns.loadfromfile('Filename');كود : dbgrid1.Columns[0].Title.caption:='TitleName';
...
dbgrid1.Columns[0].Color:=clred;
...
dbgrid1.Columns[0].Visible:=false;
...و السلام عليكم |