02-10-12, 01:11 AM
كاتب الموضوع : Islamic Empire
بسم الله الرحمن الرحيم
السلام عليكم اخوتي
في فيجوال بيسك 6 - الله يرحمها - كنا ننسخ الأداة ثم نلصقها على لفورم فتظهر لنا رسالة لتسألنا إذا ما كنا نريد انشاء مصفوفة أدوات conrtol array وبالضغط على نعم تأخذ العناصر الجديدة نفس الاسم و يصبح لها نفس الكود وترقم تلقائيا داخل الخاصية Index
في دوت نيت الموضوع ليس بهذه البساطة - كما يقولون للقوة ثمنها - ولكن التعقيد البسيط في العملية اتاح أيضا خواص جديدة , ففي فيجوال بيسك 6 جميع الأدوات داخل المصفوفة لها نفس الكود ( أي يتم استدعاء الكود من نفس الإجراء ) بينما في دوت نيت يمكنك أن تستغل الطريقتين :
1- أن تشترك الأدوات في كود المصفوفة كما في فيجوال بيسك 6
2 - أن يكون لكل أداة الأكواد الخاصة بها منفصلة عن المصفوفة .
كيف ؟
أولا : أضف سبع أدوات من نفس النوع ولتكن صناديق نصوص Text Box
ثانيا : من القائمة أدوات Tools اختر Choose ToolBox Items فتظهر لك قائمة طويلة بالأدوات التي يمكنك إضافتها
الآن لكل نوع من الأدوات مصفوفة خاصة به وفي مثالنا هذا سيكون TextBox Array اخترها لتضاف إلى قائمة الأدوات
ثالثا : أضف الأداة للفورم , لن تظهر الأداة في الفورم بل ستظهر في بار بالأسفل مع الأدوات مثل المؤقت Timer والتي لا تظهر عند عمل البرنامج .
الآن جاء وقت القليل من الأكواد , في قسم الأكواد اختر حدث initialize component التابع للفورم لتظهر لك قائمة طويلة بالأكواد
ستجد إشارات مثل :
' txt
.
.
.
'button
..
.
.
'listbox
طبعا تفصلها مسافات وهذه المسافات بها معلومات عن موقع وخصائص كل أداة , اذهب لأي أداة تريد أن تضيفها لمصفوفة الأدوات
ولتكن textbox1 وأضف هذا الكود لخصائصها :
كود :
textboxarray1.setindex(textbox1,ctype(1,short))
textboxarray1 اسم مصفوفة الأدوات
setidex اسم خاصية لا تستعجب إذا لم تظهر لك في قائمة خواص المصفوفة ولا أعرف ما السبب
textbox1 الأداة التي نريد أن نضيفها للمصفوفة
1 رقم ال index للأداة في المصفوفة وطبعا كل أداة سنغير هذا الرقم بالتوالي
بعد كتابة هذه الأكواد ستظهر في كل أداة خاصية جديدة وهي :
index on ....
مكان النقاط طبعا هو اسم المصفوفة
يمكنك الآن كتابة الأكواد في أحداث المصفوفة لتشمل كافة أحداث الأدوات
بقيت نقطة واحدة وهي إنه في فيجوال بيسك هناك المتغير index والذي نفرق به بين الأدوات في كل مصفوفة
أما في دوت نيت فهذا الكود يفي بالغرض
كود :
Dim z As Integer = Butarr.GetIndex(sender)
في المثال المرفق سنرى المصفوفة مطبقة ولكن على مجموعة من الأزرار Buttons وسنرى أن الزر يمكن أن يكون له احداث مشتركة مع باقي أدوات المصفوفة ويمكن أن يكون له أيضا أحداث خاصة به
أتمنى أن يكون موضوعي الأول مفيد لكم
وننتظر تعليقاتكم