تعاريف و أمثلة بسيطة حول ق البيانات و ربط جدول بالدلفي،و بعض العمليات عليه/-1
#4
- استعمال بعض المكونات الأخرى للاطلاع على محتويات الجدول ، و ادخال أو تعديل البيانات.

إنشاء عناصر الحقول TField :
يمكن استخدام محرر الحقول لتعريف لائحة من الحقول ضمن الجدول ( عنصر الجدول Table)
ومن أجل كل حقل تنشئ دلفي عنصر من النوع Tfield وهذا العنصر غير مرئي ولكن يمكن من خلاله الوصول إلى قيمة الحقل والتحكم بمواصفاتها .

_ لفتح صندوق حوار محرر الحقول اضغط مرتين على العنصر Table لتظهر النافذة المجاورة ، إضغط بزر الفأرة الأيمن في وسط هذه النافذة لتظهر قائمة اختر منها Ajouter tous les chapms - Add All Field عندها ستظهر حقول الجدول في هذه النافذة ، وفي هذه الحالة يمكنك تحديد حقل أو أكثر أو كل الحقول ثم تقوم بعملية سحب عادية بالزر الأيسر للفأرة إلى الفورم ، و سوف تلاحظ العنصر DataSource ينشأ تلقائيا و يربط بالعنصر Table.
كما يمكنك تعديل ترتيب الحقول (التي ستظهر على DbGrid) ، أو حذف أو إنشاء حقل معين

(ملاحظة : لا يحذف الحقل من ملف الجدول بذاته ، يعني بامكانك الحذف من هنا و عند فتح الجدول بطريقة أخرى سوف تجد كل الحقول المنشأة سلفا بواسطة DataBase Descktop موجودة ، كما بامكانك الإستعادة عن طريق خيار Ajouter des champs او Add Fiels).


_ بعد سحب الحقول إلى الفورم ، يخطر ببالك أنه بإمكانك عرض حقول الجدول و الإطلاع على البيانات بدون العنصر DbGrid ، ثم لاحظ إسم كل عنصر ، هل مرت معك هذه الأسماء ؟
إنها أسماء مكونات متواجدة بـالقائمة ControleBD ، ماذا يعني هذا ؟ يعني أنه بإمكانك إستعمال هذه المكونات على الفورم لتعرض فيها بيانات الجدول على طريقتك ، و تربط ما تحتاج إليه . و بدون توضيح للطريقة ، نقول لاحظ خواص نفس المكونات التي قمت بسحبها آنفا و اربط بنفسك ما تحتاج إليه من العناصر. و إن شئت اضف أيضا DbGrid +DbNavigator ومارس بعض العمليات ليتسنى لك معايشة الأمر.

_ هناك مكونات أخرى لك أن تجرب ما تسنى لك ، و سنتعرض للمكون DblookupCombobox في العنصر الموالي من الدرس أو الموضوع.
_ الآن : إذا استعملنا العنصر DbEdit أو DbComBobox ، و كان بالمشروع إحدى مكونات التجميل Skins التي لا تحتوي على تلك العناصر ، (ارجع إلى: http://www.delphi4arab.net/forum/showthread.php?tid=481 )

_ فهل مظهر الواجهة بالعنصر DbComBobox أو sComBobox وكذلك DbEdit و sEdit يبدو نفسه (جميلا) ، لسبب بسيط جدا كهذا أو لأسباب برمجية ، نحتاج إلى إدراج عناصر غير عناصر DbNavigator فكيف الربط و التحكم بالجدول عن طريق هذه المكونات ؟
_ الأمر سهل ، سنجرب تطبيق بسيط جدا بواسطة العنصر MaskEdit :
انشئ كمثال نفس الجدول الموضح بالصورة 001 أعلاه ، الذي يحتوي على حقلين (بالإنجليزية) : Name - - B_Day . ضع العناصر Table - DataSource – DbGrid - DbNavigator و اربط الخصائص كما مر معنا ، ضع عنصرين Maskedit تحت اسم MaskEdit1 - MaskEdit2 ، ضع 6 أزرار تأخد الكابشن :
جديد – حفظ – تعديل – التالي – السابق – حذف.
*/ ملاحظة : لم نقم بوضع العناصر DbGrid – DbNavigator إلا لملاحظة التحكم في الجدول ، وإلا فلسنا بحاجة لها .
على الزر الأول حرر
كود :
Table1.Insert;
على الزر الثاني حرر
كود :
begin { Ajouter les donées / add data} Table1.FieldValues['Name']:=Maskedit1.Text; {ou bien / or Table1.FieldByName('Name').AsString:=Maskedit1.Text; } Table1.FieldValues['B_Day']:=Maskedit2.Text; Table1.Post; { pour sauvegarder / for save } end;
على الزر الثالث حرر
كود :
Table1.ُEdit;
على الزر الرابع حرر
كود :
Table1.next;
على الخـامس حرر
كود :
Table1.Prior;
على السادس حرر
كود :
Table1.Delete
كما توجد أكواد عديدة أحرى ، و كما يمكنك استبدال العناصر المستعملة بعناصر أخرى مثل استبدال MaskEdit2 بـ : DateTimePIcker
فتحرر الكود البديل :
كود :
Table1.FieldValues['B_Day']:=DateTimePicker1.Date;

الآن نفد المشروع وجرب ادخال و تعديل البيانات مع الحفظ و الحذف . مارأيك ؟
/ ...يتبع ..../

نتناول في المرة القادمة إن شاء الله العنصر الموالي ، المسطر أعلاه .... و السلام عليكم و رحمة الله و بركاته.
[-] كل من 1 user says قال شكرا ل nabilkeb على المشاركة المفيدة
  • zouaidahmed
الرد


الردود في هذا الموضوع
تعاريف و أمثلة بسيطة حول ق البيانات و ربط جدول بالدلفي،و بعض العمليات عليه/-1 - بواسطة nabilkeb - 11-12-2008, 11:48 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم