Admin Admin
المساهمات : 47 تاريخ التسجيل : 29/04/2008
| موضوع: الـ OOP كاملا أو واضحا ,,, الأربعاء مايو 07, 2008 1:19 am | |
| السلام عليكم :
الكثير من الأعضاء في قسمنا قادمين من فيجوال بيسك 6 مثلي وعلي الأغلب لم نكن نعرف ما معني كلاس وكيف تصنع لأنه لم يكن مفهوم الـ OOP كاملا أو واضحا ,,,
لكن كيف تصنع كلاس وهذا درس ومثال بسيط عليها,,,
أولا ما هي الكلاس ؟
الكلاس هي تعتبر نوع من أنواع الكائنات أي الـ Components الموجوده في الـ Tool box بطريق آخر عندما تضع علي الفورم Component من النوع Connection فانك بذلك أنشأت كلاس من النوع Connection وعلي ذلك يمكن الاستعاضه عن اضافة الـ Connection Component من الـ Tool box باستخدام صيغة ال Constructor كالآتي :
[align=left:73d2fb1ea8]CODE[/align:73d2fb1ea8]
[code:1:73d2fb1ea8]Dim myconnection as new connection
وبذلك أنشأنا Component من النوع Connection ,,,[/code:1:73d2fb1ea8]
وذلك بغض النظر ان كان OLEDB أو SQL و ينطبق السابق علي كل الـ Components حتي الأزرار و مربع النص وباقي الأدوات أيضاأنك عندما تضع زر علي الفورم فانك تنشئ كلاس من نوع Command button وبالتالي نستنتج أن الكلاس هي الصوره الكوديه للـ Component ,,,
ويمكن للكلاس أن تحتوي علي دوال التي تسمي Methods وأيضا تحتوي علي Properties ,,,
أي أن الكلاس تعتبر Component حاويه للدوال والخصائص ,,,
وفي مثالنا هذا ننشئ كلاس تحتوي علي داله واحده تعمل علي تكبير الفورم لتملأ الشاشه تماما وتستقبل هذه الداله قيمتين الأولي هي الفورم التي سوف نقوم بتكبيرها والقيمه الثانيه هي قيمه منطقيه أي Ture or False أي هل تريد التكبير أم لا وتعود الداله بقيمه 1 اذا تم التكبير و صفر اذا لم يتم التكبير ,,,
الخطوات :
1- نضيف الي المشروع الحالي New Item من النوع Class ,,,
(((أضغط كليك يمين علي المشروع في ال Solution Explorer وقف علي زر Add واختر آخر زر في القائمه )))
2- ويكون الكود كالتالي ,,,
[align=left:73d2fb1ea8]CODE[/align:73d2fb1ea8]
[code:1:73d2fb1ea8]Public Class Formstate
Public Function Mystate(ByVal myform As Form, ByVal state As Boolean) As Integer
Dim ret As String 'متغير يحتوي علي القيمه التي ترجع بها الداله
If state = True Then
'كود تكبير الفورم
myform.ShowInTaskbar = False
myform.FormBorderStyle = FormBorderStyle.None
myform.WindowState = FormWindowState.Maximized
ret = 1 'نعود بالقيمه 1 اذا تم التكبير
Else 'nothing to do
ret = 0 'نعود بالقيمه صفر اذا لم يتم التكبير
End If
Return (ret) 'القيمه النهائيه
End Function
End Class[/code:1:73d2fb1ea8]
3- في الفورم الرئيسه نستخدم صيغة ال Constructor لكي ننشئ وجود للكلاس داخل الفورم الحاليه ,,,
4- ثم ننشئ متغير من النوع Integer لكي نستقبل القيمه التي تعود بها الداله كما شرحنا ,,,
5- ثم نعرض القيمه في رساله (((لكي نتأكد فقط))) واذا لم تريد عرض الرساله فلا ضرر ,,,
ويكون الكود في الفورم كالتالي :
[align=left:73d2fb1ea8]CODE[/align:73d2fb1ea8]
[code:1:73d2fb1ea8]Dim fs As New Formstate 'ننشئ وجود للكلاس
Dim res As Integer 'مخزن لليقمه التي تعود بها الداله
res = fs.Mystate(Me, True) 'ننفذ الداله ونخزن القيمه المرتجعه
MsgBox(res) 'نعرض القيمه في رساله للتأكد فقط[/code:1:73d2fb1ea8]
6- شغل البرنامج وأنظر النتيجه ,,,
وكما لاحظتم أنا لم أشرح الفرق بين Byval ,Byref في تمرير المتغيرات الي الداله وأترك لكم درس الأخ العزيز Crazy-man لتعرفوا الفرق بينهما ,,,
***الدرس مرفق في الملف المضغوط ,لأني لم أجد رابطه ,,,
وأوجه الشكر الي الأخ محمد عبد العليم الذي عرفت منه كيفيه تكبير الفورم لتملأ الشاشه تماما والأخ Crazy-man الذي تعلمت منه الفرق بين الـ Byval ,Byref ,وكمان الأخ Ingm اللي أعطاني كتاب الـ OOP اللي عرفت منه معلومات في الموضوع ,,
عايز أشوف تجاوب مع الموضوع علشان أحس بالتفاعل ,,,
أتمني من الله أن يكون هذا الدرس خالصا لوجهه ويوضع في ميزان حسناتي كماأرجو أن أكون قد وفقت في توصيل معني الكلاس وكيفية انشاءها واستخدامها وان كان عندي خطأ فياريت توضحوه وأي أسئله أنا هعرف أجاوب عليها ان شاء الله ربنا يقدرني وأجاوب (((لأني مبتدأ زيكم وأقل منكم))) ,,,
رابط الدرس | |
|
الرحالة&الصغير
المساهمات : 94 تاريخ التسجيل : 05/05/2008
| موضوع: رد: الـ OOP كاملا أو واضحا ,,, الأربعاء مايو 07, 2008 3:59 am | |
| مشكور اخوي ادمن مقصرت اخوي | |
|
teef-3abr
المساهمات : 124 تاريخ التسجيل : 03/05/2008
| موضوع: رد: الـ OOP كاملا أو واضحا ,,, الأربعاء مايو 07, 2008 6:06 pm | |
| يعطيك العافية يارب تقبل مرورري [img] [/img] | |
|