في هذا الدرس سنتعلم ، كيف كتابه الكود في الفيجوال بيسك دوت نت ، شرح انواع الرسائل msgbox 3 ، شرح اهم خصائص وادوات و الاحداث في الفيجول بيسك دوت نت .
Msgbox (صندوق الرسائل)
شرح مفيد جداً لــ Msgbox (صندوق الرسائل) اولا _ Msgbox اختصار الى Message Box و تعني صندوق رسالة وهذا الصندوق عبارة عن كود برمجي بلغة ال (بيسك ) لاظهار رسالة ما كالــ كثير من الرسائل التي تراها في نظام النوافذ ( ويندوز )
كأن يكون هناك رسالة خطأ او تحذير او تنبيه او استفهام .... الخ
وللاسف الكثير من الذين يعلمون لغة البيسك يبدأون بتعليم المبتدئين نمط الرسائل على انه رسالة فحسب تحمل اسم البرنامج مثل :
Msgbox ("Hello All ")
و هذا التعليم يقولون انه تعليم للمبتدئين ولا داعي الى تعليمهم امور تعقدهم ولكن انا اختلف معم في الرأي حيث اذا قمت بالشرح والتوضيح لا داعي الى ان يلتمس المتعلم منك اي تعقيد ولهذا ساقوم بشرح عام و بسيط و واضح لتستطيع كتابة رسالتك كيف ما تشاء
اذا كتبت في نافذة الاكواد رسالة نصيه فسيكون فيها العديد من الخيارات وسيتم الشرح طبعا نحن نكتب الكلمة المتعلقة بكود الرسالة Msgbox ثم نضع " لبدء كتابة النص الذي نريد وبعد الانتهاء من كتابة نص الرسالة نضع " اخرى لاعلام الحاسب باني انتهيت من كتابة نص الرسالة والان الجزء الاهم وهو الخيارات الاضافية للرسالة بعد ان كتبنا Msgbox ثم " ثم النص الذي نريد ثم " نكتب , ثم تظهر لك قائمة طويلة بالخيارات التاليه
شرح اهم انواع الرسائل Msgbox التي تظهر للمستخدم في اي برنامج
1- abortrylgnore اي تضع لك بالرسالة ثلاث ازرار هم احباط واعادة محاولة و الغاء الامر
2- ApplicationModal اي تضع لك الرسالة على نمط البرنامج ( اي ليس لها علاقة بالويندوز)
3- Critical وهي لوضع ايقونة خطأ اي × في رسالتك
4- DefaultButton1 لجعل الزر الافتراضي الذي يكون محدد فور ظهور السالة هو الزر الاول
5- DefaultButton2 لجعل الزر الافتراضي الذي يكون محدد فور ظهور السالة هو الزر الثاني ( لكن بالطبع يجب ان يكون عندك رسالة فيها اكثر من زرين
6- DefaultButton3 لجعل الزر الافتراضي الذي يكون محدد فور ظهور السالة هو الزر الثالث ( لكن بالطبع يجب ان يكون عندك بالرسالة فيها اكثر من 3 ازرار)
7- DefaultButton4 لجعل الزر الافتراضي الذي يكون محدد فور ظهور السالة هو الزر الرابع ( لكن بالطبع يجب ان يكون عندك بالرسالة فيها اربع ازرار حصراً )
8- Exclamation وهي لوضع ايقونة تحذير التي تأتي بمثلث اصفر وفيها ! في رسالتك
9- Information وهي لوضع ايقونة معلومات الي تأتي بدائرة زرقاء وفيها ! في رسالتك
10- MsgBoxHelpButton اي لتضع لك بالرسالة زر المساعدة "Help" وانت تحدد الكود الذي يظهر عند الضغط عليه ....الخ
11- MsgBoxRight يجعل نص الرسالة من اليمين الى اليسار
12- MsgBoxRtlReading تجعل الازرار و زر × على اليسار
13- MsgBoxSetForeground وهي لجعل صندوق ال رسالة في المقدمه
14- OKCancel تجعل في رسالتك زرين هما موافق و الغاء الامر
15- OKOnly تجعل في رسالتك زر واحد فقط وهو موافق
16- Question وهي لوضع ايقونة استفهام التي تاتي في دائرة زرقاء وفيها ؟ في رسالتك
17- RetryCancel تجعل في رسالتك زرين هما اعادة المحاولة و الغاء الامر
18- SystemModal تجعل الرسالة على مستوى النظام
19- YesNo تجعل في رسالتك زرين هما نعم ولا
20- YesNoCancel تجعل في رسالتك ثلاث ازرار هم نعم ولا و اعادة
والان بعد ان شرحنا اضافات الرسالة نتعلم كيف نصنعها :
Messagebox. Show("hello,"رساله", messgeboxButtons. Ok, messgeboxlcon. None)
شرح الكود messgebox.show عرض الرساله ( ) وجود الاقواس ضروريه في بدايه ونهايه الكود " hello" هنا نكتب الرساله التي نريدها تظهر للمستخدم ونضعها بين علامتين تنصيص " " , "الرساله " هي اسم الرساله التي تظهر اي اسم الفورم الصغير messgeboxButtons. Ok نوع الازرار التي يختارها المستخدم messgeboxlcon. None نوع العلامه
لاحظ الصور وتعرف على انواع الرسائل التي تظهر المستخدم
شرح أغلب الأحداث في الفيجول بيسك دوت نت
الحدث : Activate : بعد التحميل
مثال :
Private Sub Form_Activate() MsgBox "Aboud" End Sub
عند التنفيذ ستلاحظ بأن الرسالة تظهر بعد الفورم ------------------------
الحدث Click : عند الضغط مرة واحدة بزر اليسار
مثال :
Private Sub Command1_Click() MsgBox "Aboud" End Sub------------------------
الحدث DblClick : عند الضغط مرتان
مثال :
Private Sub Label1_DblClick() MsgBox "Aboud" End Sub------------------------
الحدث GotFocus : عند انتقال التركيز الى الاداة
------------------------ KeyDown : عند الضغط على زر من لوحة المفاتيح دون الافلات ------------------------
الحدث KeyUp : عند افلات الزر ويأتي بعد KeyDown ------------------------
الحدث Load : خاص بالفورم ويقع عند التحميل
مثال :
Private Sub Form_Load() MsgBox "Aboud" End Sub
عند التنفيذ ستلاحظ بأن الرسالة تظهر قبل الفورم ------------------------
الحدث LostFocus : عند الغاء التركيز عن الاداة ------------------------
MouseDown : عند الضغط بأحد ازرارالفارة ------------------------
الحدث MouseMove : عند تحريك الماوس فوق الاداة
مثال :
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Line (X, Y)-(X + 50, Y + 50) End Sub
------------------------ MouseUp : عند افلات الضغط ويأتي بعد MouseDown ------------------------
الحدث QueryUnload : عند الضغط على زر X بأعلى الشاشة
مثال :
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) MsgBox "Aboud" End Sub------------------------
الحدث Resize : عند تكبير او تصغير حجم الفورم
مثال :
Private Sub Form_Resize() MsgBox "Aboud" End Sub------------------------
الحدث Unload : عند الخروج من البرنامج
مثال :
Private Sub Form_Unload(Cancel As Integer) MsgBox "Aboud" End Sub
كيفيه كتابه الاكواد في الفيجول بيسك دوت نت
الاكواد هي اوامر نقوم بكتابتها ليقوم البرنامج بتنفيذ امر معين طريقة كتابة الكود ( الاداة . الخاصية = القيمة) اذا وضعنا اي اداة بالفورم سنجد في صندوق الخصائص الخاص بها خاصيةname هذه الخاصية سنقوم بإستخدامها في الكود ومن الممكن ان نغير اسم الاداة بإسم مختصر من الخاصية name حتى يكون من السهل علينا كتابتها فيالكود
1 ـ علامة (.) هذه العلامة تستدعي خصائص الادوات مثلا اسم الاداة text1 ونريد ان نستدعي خاصية text وهذه الخاصية تقوم بكتابة نص بالأداة سيكون الكود هكذا text1.text بمجرد ما نكتب علامة (. ) بعد الاداة سيظهر لنا خصائص هذه الاداة لنختار منها لكي لا نكتبها حرف حرف ومن الممكن نغلط في كتابها فعلينا بإختيار الاداة من القائمة افضل
2ـ علامة (=) هذه العلامة تأتي بعد خاصية الاداة
3ـ علامة ("") هذه العلامة نكتبها اذا اردنا ان نكتب نص بداخل الاداة مثال: نريد تغيير النص بأداة التيكست الموجودة على الفورم الكود هيكون هكذا
text1.text="ask-pc" msgbox
اذا أردنا ان نقول للمستخدم شئ معين مثلا تم حفظ البيانات ماذا نفعل نقوم بكتابة msgbox ثم نكتب مانريد ما بين هذه العلامة ("") هكذاmsgbox"saved" اداة الشرط if هذه الاداة مهمة جدا هحاول اشرحها بطريقة مبسطة مثال اذا المستخدم دخل البيانات وترك حقل فارغ ونحن نريد ان يدخل جميع البيانات ماذا نفعل ؟؟ في هذا المثال هنستخدم msgbox واداة الشرط if افتح البرنامج وجرب الان ضع اداة تيكست على الفورم و اداةcommand وامسح النص الذي يوجد بداخله من خاصية text نقوم بالضغط دبل كليك على اداة command لنكتب الكود
If Text1.Text = "" Then msgbox"ادخل رقم التليفون" end if
شرح الكود اذا اداة التيكست "" بمعنى فارغة اظهر رسالة للمستخدم تفيده بذلك ونكتب الرسالة بين هذه العلامات"" ثم ننهي بend if شغل البرنامج عن طريق f5 واترك اداة التيكست فارغة واضغط على المفتاح command ماذا ترى الان ظهرلك الرسالة اللي حضرتك حددها بنفسك صح
اذا اردت ان تظهر اختيار للمستخدم مثلا اذا التيكست به نص وتريد ان تظهر للمستخدم اذا كان يريد حذف هذا النص ام لا ماذا ستفعل لا تقلق الامر بسيط اولا ستقوم بتعريف متغير وليكن نصي (string) باستخدام dim والمتغير مثلا اسمه x ليس اساسي ان تكتب x اكتب ما يحلوا لك سيكون الكود dim x as string ثم تظهر للمستخدم رسالة ويختار نعم أو لا مثلا ستقول له مثلا (هل انت متأكد من الحذف)
Dim X As String X = MsgBox("are you sure", vbYesNo, "take care") If X = vbYes Then text1.text="" end if
لاحظ عرفنا متغير اسمه x من نوع نصي وظهرنا للمستخدم رسالة بسؤال ومفتاحين yes و no اذا ضغط المستخدم yes سوف يتم تنفيذ الامر اللي بعد then وهو حذف النص الموجود بأداة التيكست وكلمة take care هاي عنوان الصندوق الذي سوف يظهر للمستخدم اكتب ما تشاء
ملاحظه يجب ان نأخذها بعين الاعتبار عند كتابة اي حرف بالكود خطأ لا يقوم البرنامج بتنفيذ الاوامر اذا زودت مسافة او نقصت مسافة في الكود ايضا لايقوم بتنفيذ الاومر كتابة الاكواد تحتاج الى صبر
أهم الخصائص في الفيجوال بيسك
الخصائص الشائعه في الأدوات المستخدمه في الفيجول بيسك دوت نت كالتالي :
Name : تحدد من هنا اسم الكائن الذي ستستخدمه في كتابة أكواد هذا الكائن
الخاصية Alignment : تحدد من هنا مكان الكتابة وهي
0-Left Justify الكتابة بجهة اليسار
1-Right Justify الكتابة بجهة اليمين
2-Center الكتابة في الوسط
Align : تحدد من هنا مكان توضع الأداة على النموذج وتحوي
2⃣
0-None لن يتغير مكانها أي ستبقى مثل ما رسمتها
1-Align Top تجانب نحو الأعلى
2-Align Bottom تجانب نحو الأسفل
3-Align Left تجانب نحو اليسار
4-Align Right تجانب نحو اليمين
3⃣
Appearance : تحدد من هنا شكل الأداة وهي
0-Flat تجعل شكل الأداة مسطح
1-3d تجعل شكل الأداة ثلاثية أبعاد (مجسّم)
4⃣
BackColor : تحدد لون خلفية الكتابة (أزرق أو أحمر أو ....)
5⃣
Form BorderStyle : من هنا تحدد شكل ايطار الفورم وهي
0-none بدون ايطار
1-Fixed Single ظهور ايطار بزر (اغلاق) فقط مع ظهور شريط لها في Taskbar
2-Sizable ظهور ايطار بكامل محتوياته (اغلاق-تصغير-تكبير) مع ظهور شريط لها في Taskbar
3-Fixed Dialog ظهور ايطار بزر (اغلاق) فقط دون ظهور شريط لها في Taskbar
4-Fixed ToolWindow ظهور ايطار صغير بزر (اغلاق) فقط دون ظهور شريط لها في Taskbar
5-Sizable ToolWindow ظهور ايطار صغير بزر (اغلاق) فقط دون ظهور شريط لها في Taskbar مع امكانية تصغير النافذة وتكبيرها
6⃣
Tools BorderStyle : تحدد شكل حافة الشاشة ( دون حافة أو مع حافة )
0-None دون حافة
1-Fixed Single مع حافة
Caption : تحدد من هنا اسم الكائن الذي ستستخدمه في كتابة أكواد هذا الكائن ( تعمل مثل Text )
ControlBox : اذا كان خيارك False فسوف تختفي أيقونة البرنامج والأزرار (اغلاق-تصغير-تكبير) اما ان كان True فسوف يظهرون
DataField : ربط أداة النص بحقل في قاعدة البيانات
DataSource : ربط أداة النص بجدول في قاعدة البيانات
DragIcon : تغيير شكل مؤشر الفارة عند الضغط على أداة النص بشرط أن تكون الخاصية DragMode هي 1-Automatic كي يتغير شكل المؤشر
Enabled : ان كانت هذه الخاصية تساوي False فان المستخدم لن يستطيع استخدام أداة النص سوى للقراءة
وان كانت هذه الخاصية تساوي True فان المستخدم سوف يستطيع استخدام أداة النص لكل شيء (القراءة والكتابة والنسخ .... الخ)
7⃣
Font : تحدد من هذه الخاصية
اسم الخط المراد الكتابة به (Andalus أو ....)
وشكل الخط ( Italic أو ....)
وحجم الخط (8 أو 10 أو ....)
وتحدد ان كنت تريد ان يحوي خط بمنتصف الكتابة أو تحت الكتابة أو كلاهما أو بدونهما
ForeColor : تحدد من هنا لون خط الكتابة (أزرق أو أحمر أو ....)
Height : أرتفاع أداة النص
Index : اذا كنت تريد ان تنشىء 2 text بنفس الأسم
فما عليك سوى تغيير قيمة الIndex لاحدهما وجعلها واحد (تستطيع ان تنشىء عدد غير محدود من text بنفس الاسم)
Left : بعد الطرف الأيسر لأداة النص عن الطرف الأيسر للفورم
Locked : عدم السماح للمستخدم باكتابة أو المحي (فقط يمكنه النسخ)
MaxLength : تحديد عدد الحروف المسموحة للمستخدم بإدخالها في أداة النص (القيمة (0) عدد غير محدود)
MaxButton : عدم تفعيل زر التكبير الموجود في شريط النموذج
MinButton : اخفاء زر التصغير الموجود في شريط النموذج
MouseIcon : تغيير شكل الماوس بأيقونة داخل الحاسوب عند التأشير على أداة النص
بشرط أن تكون الخاصية MousePointer هي 99-Custom كي يتغير شكل المؤشر
MousePointer : تغيير شكل الماوس بأيقونة داخل برنامج الفيجوال بيسك عند التأشير على أداة النص (يحوي 15 ايقونة)
Moveable : السماح لمستخدم بتحريك النموذج أومنعه من ذلك
MultiLine : ان كنت تريد بالكتابة بأكثر من سطر فما عليك الا تغيير هذه الخاصية الى True
PasswordChar : هذه الخاصية تستعمل في كتابة كلمات السر حيث تظهر كلمة السر على شكل نجوم مثلا
فاذا اردت استخدامها اكتب داخل هذه الخاصية (نجمة(*))
RightToLeft : هذه الخاصية تحول الكتابة الى الجهة العربية (لكنها لا تنفع مع هذه الأداة)
ScrollBars : لاضافة شريط تمرير لأداة النص وتحوي
0-None دون شريط تمرير
1-Horizontal شريط تمرير أفقي
2-Vertical شريط تمرير عمودي
3-Both الأثنان (العمودي و الأفقي)
StartUpPosition : مكان ظهور الفورم عند تشغيل البرنامج وتحوي
TabStop : اذا كانت هذه الخاصية False فلن تستطيع التنقل الى هذه الأداة بواسطة مفتاح Tab
اما ان كانت True فتستطيع التنقل الى هذه الأداة بواسطة مفتاح Tab
Text : النص الذي سيظهر على الأداة ( تعمل مثل Caption )
ToolTipText : التعليق الذي سيظر على الأداة عند ابقاء المستخدم الفارة عليها مدة قصيرة
Top : بعد الطرف العلوي لأداة النص عن الطرف العلوي للفورم
Visible : اخفاء الأداة عن المستخدم(False) واظهارها (True)
Width : عرض أداة النص
WindowState : تحدد حالة البرنامج
0-Normal : لن يتغير شيء
1-Minimized : اظهار النافذة مصغرة
2-Maximized