استخدام الاصناف داخل البرنامج
اضافة صنف إلى مشروع لا يعنى امكانية استخدام الصنف مباشرة بل يجب انشاء كائن ينتمى لهذا الصنف أولاً . بعد ذلك يمكنك استخدام هذا الكائن كما تستخدم أى كائن أو اداة أخرى..
يتم انشاء كائن اما بالاعلانDimأو باستخدام التخصيص بالكلمةSetكالآتى :
Dim MyAlarm As New Alarm
Dim MyAlarm As Alarm
Set MyAlarm = New Alarm
اذا احتوى الصنف الذى تستخدمه على احداث خاصة فان استخدامSetيصبح ضرورى كما يجب استخدام الكلمةWith Eventsعند الاعلان عن الكائن كما يلى :
Dim WithEvents MyAlarm As Alarm
Set MyAlarm As New Alarm
الوظائفMethods
يمكن انشاء وظائفMethodsللاصناف ببساطة بتعريف اجراءات مع الأخذ في الاعتبار أن تكون عموميةPublicوذلك كالآتى:
Public Sub PrintBold(Line As String)
Printer.ForntBold = True
Printer.Print Line
End Sub
التخلص من الحدث
أى كائن يتم انشاؤه يستهلك جزء من الذاكرة وموارد النظام لذلك فاذا انتهيت من استخدام يفضل ان تحذفه من الذاكرة باستخدام عبارة التخصيص التالية:
Set MyAlarm = Nothing
انشاء الخصائص
اضافة الخصائص إلى الصنف :
بعد انشاء وحدة الصنف يمكنك اضافة الخصائص وهناك طريقتان لانشاء خاصية لصنف:
تعريف متغير عموميPublicويتم الاعلان عنه في قسم الاعلان العام الخاص بالصنف.
أو استخدام اجراءات الخصائصPropertyوهيGetو.. Let
هناك ثلاث أنواع من اجراءات الخصائص:
Property Letيستخدم لقبول قيمة الخاصية من البرنامج الذى يستدعيه ثم يقوم بتخزينها في المتغير المحدد لهذه الخاصية..
Property Get: يستخدم لارسال قيمة الخاصية إلى البرنامج الذى يستدعيه بمعنى أنه يستخدم لاستقبال قيمة الخاصية..
Property Set: نوع مخصوص من الاجراءLet يستخدم عندما تكون الخاصية نفسها عبارة عن كائن ****** من الخط Font..
لانشاء أحد الاجراءات السابقة تأكد أن نقطة الادراج في نافذة الكود الخاصة بالصنف الذى تبنيه..
اختر امرAdd Procedure من القائمة Tools ..
سيظهر مربع حوار اضافة اجراء
في مربعNameحدد اسم الخاصية ونشط الزرPropertyمن المجموعةType
انقرOkليتم انشاء قالبين للاجرائينLetو..Get
يقوم الاجراءLetباختبار قيمة الخاصية والتحقق منها ثم تخزينها في متغير خصوصيPrivateكما يلى:
Public Property Let Legnth(ByVal Length As Integer)
If Legnth < 0 Then
M_Legnth = 0
Else
M_Legnth = Legnth
End Property
يمكن للبرنامج قراءة قيمة الخاصية من خلال الاجراءGetكالآتى:
Publick Property Get Legnth() As Integer
Legnth = M_Legnth
End Property
اضافة صنف إلى مشروع لا يعنى امكانية استخدام الصنف مباشرة بل يجب انشاء كائن ينتمى لهذا الصنف أولاً . بعد ذلك يمكنك استخدام هذا الكائن كما تستخدم أى كائن أو اداة أخرى..
يتم انشاء كائن اما بالاعلانDimأو باستخدام التخصيص بالكلمةSetكالآتى :
Dim MyAlarm As New Alarm
Dim MyAlarm As Alarm
Set MyAlarm = New Alarm
اذا احتوى الصنف الذى تستخدمه على احداث خاصة فان استخدامSetيصبح ضرورى كما يجب استخدام الكلمةWith Eventsعند الاعلان عن الكائن كما يلى :
Dim WithEvents MyAlarm As Alarm
Set MyAlarm As New Alarm
الوظائفMethods
يمكن انشاء وظائفMethodsللاصناف ببساطة بتعريف اجراءات مع الأخذ في الاعتبار أن تكون عموميةPublicوذلك كالآتى:
Public Sub PrintBold(Line As String)
Printer.ForntBold = True
Printer.Print Line
End Sub
التخلص من الحدث
أى كائن يتم انشاؤه يستهلك جزء من الذاكرة وموارد النظام لذلك فاذا انتهيت من استخدام يفضل ان تحذفه من الذاكرة باستخدام عبارة التخصيص التالية:
Set MyAlarm = Nothing
انشاء الخصائص
اضافة الخصائص إلى الصنف :
بعد انشاء وحدة الصنف يمكنك اضافة الخصائص وهناك طريقتان لانشاء خاصية لصنف:
تعريف متغير عموميPublicويتم الاعلان عنه في قسم الاعلان العام الخاص بالصنف.
أو استخدام اجراءات الخصائصPropertyوهيGetو.. Let
هناك ثلاث أنواع من اجراءات الخصائص:
Property Letيستخدم لقبول قيمة الخاصية من البرنامج الذى يستدعيه ثم يقوم بتخزينها في المتغير المحدد لهذه الخاصية..
Property Get: يستخدم لارسال قيمة الخاصية إلى البرنامج الذى يستدعيه بمعنى أنه يستخدم لاستقبال قيمة الخاصية..
Property Set: نوع مخصوص من الاجراءLet يستخدم عندما تكون الخاصية نفسها عبارة عن كائن ****** من الخط Font..
لانشاء أحد الاجراءات السابقة تأكد أن نقطة الادراج في نافذة الكود الخاصة بالصنف الذى تبنيه..
اختر امرAdd Procedure من القائمة Tools ..
سيظهر مربع حوار اضافة اجراء
في مربعNameحدد اسم الخاصية ونشط الزرPropertyمن المجموعةType
انقرOkليتم انشاء قالبين للاجرائينLetو..Get
يقوم الاجراءLetباختبار قيمة الخاصية والتحقق منها ثم تخزينها في متغير خصوصيPrivateكما يلى:
Public Property Let Legnth(ByVal Length As Integer)
If Legnth < 0 Then
M_Legnth = 0
Else
M_Legnth = Legnth
End Property
يمكن للبرنامج قراءة قيمة الخاصية من خلال الاجراءGetكالآتى:
Publick Property Get Legnth() As Integer
Legnth = M_Legnth
End Property
0 التعليقات:
إرسال تعليق
ما هو رايكم فى المدونة ؟ او يتم الاقتراح لاضافة اشياء اخرى ؟