بسم الله الرحمن الرحيم
بم انه لايوجد في هذا المنتدى درس متخصص بالفئات Classes فكنت أود ان ابادر واضع أول درس يشرح التعامل مع الفئات.
ولكن عندما بحثت لكي اصنع درس متكامل يفيد جميع الفئات (مبتدئين , متوسطين ومحترفين) فوجدت انني لن اقدم افضل و اكثر فائدة من دروس الأستاذ تركي العسيري.
حيث ان اعضاء المتدى وضعوا موضوع يطلبون فيه درس يشرح Classes واستخدمت الرد السريع واعطيتهم عنوان موقع كتب الحاسب العربية http://www.cb4a.com الذي يستطيعوا من خلاله تحميل كتاب الاستاذ تركي العسيري "Visual Basic للجميع – نحو برمجة كائنية التوجهOOP " الذي يوجد به فصل يشرح انشاء الفئات.
ولكن بعد التمعن في الموضوع وجدت انه من الافضل وضع موضوع يشرح ذلك ليكون مرجع للاخرين فيما بعد.
- في البداية ارجوا ان يعذرني الأستاذ تركي العسيري باعادة نشر هذا الجزء من كتابة بدون أخذ إذنه لأنني بالفعل لا أعرف كيف أتصل به.
- الدرس عبارة عن جزء من الفصل الخامس من كتاب الأستاذ تركي العسيري "البرمجة كائنية التوجه OOP" الذي يشرح كيفية إنشاء الفئات Classes.
- سوف يتم تقسيم الدرس الى ثلاث اقسام رئيسية:
- بناء الخصائص.
- بناء الطرق.
- بناء الأحداث .. القاء الأحداث.
الآن نبدأ مع شرح الأستاذ تركي العسيري:
بناء اول فئة مبسطة
والان شغل Visual Basic كي نبدأ بتصميم اول فئة تمثل شخص سنسميها
CPerson . إختر الامر Add Class Module من قائمة Project ، ومن صندوق الحوار الذي –قد- يظهر امامك، اختر الرمز Class Module وانقر على الزر Open لتظهر لك نافذة اكواد تعريف الفئة، اضغط على المفتاح [ F4 ] لعرض نافذةخصائص الفئة، وعدل خاصية الاسم من Class1 الى CPerson ، واكتب هذا الكود في الفئة:
Public sName As String Public dBirthDate As Date
وبهذا نكون قد انجزنا اول فئة بالاسم CPerson تحتوي على الخاصيتين sName وdBirthDate . تستطيع استخدام الفئة CPerson في أي مكان داخل مشروعك،
اذهب الى الحدث Click التابع لنافذة النموذج واكتب هذا الكود:
Private Sub Form_Click() Dim Turki As New cPerson Dim Khaled As New cPerson "تركي العسيري" = Turki.sName Turki.dBirthDate = #1/1/1900# "خالد الابراهيم" = Khaled.sName Khaled.dBirthDate = #1/1/1979# Print Turki.sName, Turki.dBirthDate Print Khaled.sName, Khaled.dBirthDate End Sub
قمنا -في الكود السابق – بانشاء كائنين Turki و Khaled من الفئة التي صممناها للتو CPerson ، ومن ثم قمنا بتعيين قيم للخاصيتين sName و dBirthDate لكل كائن على حدة، وختمنا الكود بطباعة قيم الخصائص التابعة للكائنين Turki و .Khaled
صحيح ان الفئة السابقة لن تطبقها في حياتك البرمجية –بشكل جاد - لطباعة قيم متغيرات، الا ان الغرض الاساسي هو مجرد توضيح فكرة الفئات وطريقة استخدامها.
![18_05_06_01_05_06_114798270636_1_11[1].gif](http://www.arabteam2000.com/picload/pics_10_05/18_05_06_01_05_06_114798270636_1_11%5B1%5D.gif)