![]() |
|
[VB.NET] إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم دورات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=187) +--- الموضوع : [VB.NET] إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET (/showthread.php?tid=19654) |
RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 18-03-17 أعذروني لهذا التأخير ... فهي بعض الظروف الطارئة عندي في العمل ... سأنتهي منها قريباً ... ونعود لموضوعنا تحياتي RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 19-03-17 مثال برنامج بسيط :
صورة 2-1
في أقصى اليسار في صندوق الأدوات Tool Box، نختار كائن/مكون ( الزر Button ) ، ووضع أي كائن إلى الفورم يتم بطريقتين : الأولى : النقر Click مرة واحدة على الكائن في صندوق الأدوات ، ثم تحريك المؤشر إلى الفورم ، وبعدها النقر بالمؤشر في المكان المطلوب في الفورم ، ستجد الأداة ظهرت في ذلك الموقع من الفورم . الثانية : النقر المزدوج Double-Click السريع على أيقونة الكائن المطلوب الموجود في صندوق الأدوات ، ستجد الكائن قد ظهر في وسط الفورم تلقائيا . صورة 2-2
ستلاحظ حواف الكائن ( النقاط الحدودية البيضاء الثمانية ) ، هي لأجل تصغير وتكبير الكائن كما يحلو للمبرمج ، ويتم ذلك بالنقر على إحداها وسحبها ( مع إستمرار الضغط على النقطة والحركة في نفس الوقت ) سأسمي هذا الفعل ( النقر المتصل ) .وستلاحظ كذلك عندما تحرك المؤشر داخل مجال الأداة أن المؤشر تغير شكله مثل علامة الزائد ( + ) بالأسهم ، ومعنى ذلك إمكانية المستخدم النقر المتصل على الأداة لسحبها ووضعها في أي مكان في الفورم الحاضن لكل الأدوات . (( ملاحظة : الأسماء ( كائن Object ، مكون Component ، أداة Tool ) ذات الأيقونات في بيئة التطوير كلها بمعنى واحد ، أي تعددت الأسماء والمعنى واحد ... )) والآن نأتي للخطوة المهمة ..
(( أريد منك أخي الآن أن تشرح صدرك وتأخذ الموضوع كأنه نزهة أو سياحة لبلد جديد عليك ، فأنا أتفادى التعقيد في الشرح قدر الإمكان ، فما أنا إلا كمرشد سياحي يحاول لفت نظرك إلى أهم المعالم وأكثرها شهرة ولا أريد جلبك إلى الأزقة الضيقة والطرقات المتشابة المعقدة ، لذا فلا أريد أن أشرح شيئاً إلا بعد إحتياجنا له بشكل ملح في الدروس ، لذا سترى أنني أتجاهل توضيح أمور ما ، والسبب هو أنني أريد أولا أن يصل المعنى إلى الأفهام قبل المعلومة نفسها !! .. ))
الخطوة هي مثلا ( فكرة ) تدور في رأسي ، أنني مثلا أريد أن أنقر زرا Button في النافذة ( الفورم Form ) ، وفي حال نقرت على الزر أريد أن تظهر لي رسالة مكتوب فيها مثلا عبارة " أهلا وسهلا Welcome " أو أية عبارة تدور في خيالي ..
ماهي الخطوات ؟؟ .. كيف العمل ؟؟
في المثال السابق نعمل ( نقر مزدوج ) على ( الأداة ) المطلوب برمجتها - أيا كانت الأداة - وذلك للدخول في عالم الأداة وأحداثها ، عند فعل ذلك تظهر لك ( النافذة النصية أو نافذة الأكواد ) الخاصة بالأداة :
صورة 2-3
كل المكتوب في هذه الصورة 2-3 لست أنا من كتبه !!! ، هذه الأكواد التي تراها كتبت نفسها أوتوماتيكياً بسبب نقرك المزدوج للأداة ، هل ترى المساحة المظللة باللون الأصفر ؟؟ ، حسنا هي مخصصة لأكوادك أنت ، أي إضافتك البرمجية سواء كانت الإضافة سطرا واحدا أو حتى أكثر من 32 ألف سطر ، لامشكلة ...
الأهم هو ألا تعبث - ولو بحسن نية - مع حراس البوابة ، فإذا عبثت بها - إن لم تكن ذو خبرة - ولو في حرف واحد ستفاجؤك قائمة أخطاء ومشاكل أنت في غنى عنها وتجعلك رغما عنك تمسح المشروع أو تحذف الأداة لتنشأ غيره أو غيرها من جديد - أكرر إن لم تكن ذو خبرة طبعا ، هذه الأكواد التي جاءتنا من العدم فقط نكتب بينهما أكوادنا نحن ..
ستسألني ماذا أكتب ؟؟ ... لا مشكلة سأخبرك ... فإذا عرفته وفهمته فلا داعي أن أكرر لك إياه .. عملي فقط أن أنير لك الطريق وأُفهمك الأساسيات وأغششك في الإمتحانات لو امكن ..
هل لاحظت هذه العبارة المطلسمة ؟؟ : Private Sub Button1_Click
لاحظ هذه العبارة : Button1_Click
كاني بك أسمع هواجس افكارك وتسال نفسك قائلاً : " زر وخط سفلي ونقر " ؟؟
نعم كلامك صحيح .. زر وكليك !!
أولا ( إسم الكائن ) وبعد ذلك ( شرطة للإسفل _ ) ثم ( إسم الفعل الواقع على الأداة : الحدث ) ..
إذن كلمة ( الحدث Event ) هو مايهمنا هنا في مثال برنامجنا البيسط ..
فكل أداة تقع عليها جملة افعال من المبرمج أو المستخدم ، فكل حركة أو نقر أو نقر مزدوج أو نقر متصل أو ضغطة زر للحروف إلخ القائمة هي حدث Event ، وبالتالي لايهمنا سوى معرف الحدث المطلوب وبرمجته ..
وهذا هو مفهوم : البرمجة بالأحداث ... وهو يشبه قولي : (( في حال حدث كذا إفعل كذا )) بكل إختصار ...
نعود لسؤالك : ماذا أكتب ؟؟ .. أين الكود ؟؟
إسمح لي هنا أن أعطيك معلومة بسيطة وربما يعرفها أكثر المبتدئين في أية لغة للبرمجة ..
هناك صف طويل جدا من الأوامر البرمجية المختلفة في عدة مجالات ، ولكن رغم هذا الإنفجار السكاني للأوامر البرمجية للغتنا الـ VB.NET إلا أننا نأخذ منها ما يهمنا فقط !! .. فربما يوما ما برمجنا برنامجا كبيرا أو متوسطاً وكل عباراته البرمجية المتكررة في طول البرنامج وعرضه لا تتعدي الـ 10 أوامر .. هذه هي الحقيقة ..
العبرة ليست في كثرة معرفتك للأوامر البرمجية .. بل العبرة هي إجادتك في استخدامها ..
والأهم أن تكون العبارة البرمجية خالية من الخطأ مئة بالمئة...
الآن أكتب في المساحة الصفراء المظللة هذا الكود ( الأمر البرمجي ) :
كود : MsgBox("Welcome")ثم أنقر على أيقونة الزر المثلثي ( كما في الصورة الآتية ) :
صورة 2-4
وتتعلق بالصورة السابقة 1-3
إسم هذا الزر الأخصر المثلثي هو Start Debugging أي بداية التنقيح وتصحيح الأخطاء ، بعنى آخر هو زر لتنفيذ أوامرنا البرمجية لنراها على أرض الواقع ، إذن هو رز لإختبار النتائج... بعد النقر على هذا الزر الظريف سنرى معا النتيجة على شكل رسالة ( أهلا وسهلاً ) ... إذن على نفس المبدأ تستطيع كتابة أية رسالة ووضعها بين علامتي التنصيص " " في الأمر MsgBox (( يُتبع ))
RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 25-03-17 السلام عليكم .... هل هنالك أسئلة أو إقتراحات من جهة القراء الكرام قبل أن أمضي قدما في الشرح ؟؟؟ RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - sendbad100 - 25-03-17 بارك الله فيك استمر ومن لديه اسئلة سوف يطرحها الله يكتب اجرك ويجعلها صدقة جارية RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 26-03-17 - كتابة الأكواد في ال .NET :
لاتخف بعد اليوم ولا تخشى من كتابة الاكواد في ال VB.NET فمحرر الاكواد في بيئة التطوير للVB.NET مرن جدا ودقيق وذكي بشكل رائع ، فأي امر مهما كان عدد حروفه هو موجود مسبقا في ذاكرة البرنامج الهائلة . فعند كتابة أمر الرسالة في المثال السابق msg ، فأول ما تكتب حرف m سترى قائمة فرعية قريبة من الحرف او الكلمة المطبوعة ، هي قائمة تنبؤية نرى مثلها في محرك البحث Google ، وكلما طبعت حروفا أكثر كلما زاد التحديد أكثر ، حتى تجد الأمر المراد كتابته . هذه الطريقة مهمة جدا في كتابة الاكواد ، والسبب هو أولا تلافي الأخطاء الإملائية في كتابة الأوامر ( لأن البرمجة أيا كانت لاتحتمل أي خطأ إملائي ) ، وثانيا هو اختصار وقت كتابة الأكواد ، وهذا ما يكسر الحاجز النفسي للمبرمج المبتدئ مثلا عندما يطلب منه كتابة الأوامر البرمجية ، اما المبرمج المتوسط او المحترف فالوضع بالنسبة له يكون ممتعا شائقا. إذن كتابة الأكواد في بيئة الدوت نت .NET للفيجوال بيسك سهلة وممتعة إلى أقصى درجة ممكنة ، وهذه ميزة قوية وجاذبة ودقيقة جدا لهذه البيئة البرمجية ! . أضف إلى ذلك أن هذه البيئة دقيقة جدا في اكتشاف الأخطاء التي تتعلق بالصيغ البرمجية لأوامرها كافة ، وحتى القوس والنقطة والعلامة لاتفلت من هذه الدقة الرقابية ! ، فعند كتابتك أمرا ما بخطأ بسيط سترى خطوطا تحت العبارة الخاطئة ، او أي شيء زائد او ناقص سترى فورا لفت النظر عليه أثناء كتابته !. - ماهي الأحداث Events ؟ كما ذكرت سابقا ، الحدث Event هنا يعني : " حدوث شيء ما " فكل أدوات وكائنات الفيجوال بيسك دوت نت تمتلك قائمة من الأحداث في مجالها البرمجي ، وبشرح بسيط فالمستخدم لبرنامج ما يفعل افعالا كثيرة سواء بالماوس او بلوحة المفاتيح ، فأي نقرة واحدة او نقر مزدوج ، او سحب أداة ، او ضغطة زر ما ، او عبور المؤشر في مساحة الأداة ... الخ ، كل فعل من قائمة هذه الأفعال يفهمها ال VB.NET على أنها ( حدث Event ). إذن على المبرمج فهم هذا المفهوم جيدا ، وهو مفهوم البرمجة بالأحداث ، لان كل برنامج لل VB.NET يرتكز عليه ، ولابد منه ، فإذا عرفنا الحدث المنشود كتبنا الكود المطلوب في مجاله فقط ، والصورة التوضيحية الآتية ستفهم منها ماذكر : (صورة 2-5 )
(1) نافذة منسدلة تحدد أسماء الأدوات الموجودة على الفورم - أقصى اليسار.
(2) نافذة منسدلة تحدد أحداث الأداة المختار إسمها . (( يُتبع ))
RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 26-03-17 ألان نعرج على الأدوات ( بعضها وأهمها ) في ال VB.NET :
الأدوات أو المكونات أو الكنترولز Controls هي الكائنات التي نستخدمها في الفورم ، وذكرت موقعها في بيئة التطوير في الصورة رقم 2-1 وبدون الأدوات لامعنى للفورم ، ولكل أداة وظيفة واحدة أو أكثر ، ولكل أداة مجموعة أحداث Events تتعلق بها ، ولكل أداة خصائص Properties . خصائص الأداة متعددة ، بعضها للقراءة والكتابة ( أي قابلة للتعديل ) ، وبعض الخصائص للقراءة فقط . عندما تنقر على أية أداة موجودة على الفورم ينتقل التركيز إليها ، وفي أقصى يمين أسفل الشاشة سترى نافذة خصائص الأداة Properties . سننتخب بعض الأدوات وأهمها في بيئة تطوير الفيجوال بيسك دوت نت ، وأهمها على الإطلاق الأدوات الثلاث الآتية : الاداة Textbox
تستعمل لإدخال بيانات المستخدم للبرنامج ، سواء كانت نصية أو حرفية . أهم خصائصها الآتي :
TextAlign محاذاة النص فى أيسر أو أيمن المنطقة المخصصة Text نكتب فيها النص الذى سيظهر بداخل أداة صندوق النص Backcolor تحديد لون الخلفية للنص المكتوب BorderStyle تحديد نوعية الإطار الذى يظهر حول النص Font تغيير نوع وحجم الخط وبعض التنسيقات على النص المكتوب ForeColor تحديد اللون المستخدم فى تلوين النص Anchor تحافظ على موقع الاداه فى النافذة عند تغيير حجمها Dock لتثبيت الأداة فى اى جهة من النموذج Name لإعطاء اسم للأداة من عند المبرمج لتستخدم فى كتابة لكود البرمجي وهو يأخذ الاسم الافتراضي TextBox1 Cursor تحديد شكل مؤشر الفارة عند مروره على الأداة Visible تحديد إذا كانت الأداة متاحة للرؤية أو مختفية للمستخدم أثناء تشغيل التطبيق Locked تحدد إذا كان يمكن للمستخدم إجراء تعديل على النص أم لا Maxlength تحديد عدد الحروف التى يمكن للمستخدم إدخالها Multiline تحديد إذا كان الأداة تحتوى على سطر واحد أم عدة سطور Passwordchar تظهر الحروف التى سيدخلها المستخدم على شكل نجوم حتى تصبح كلمة سر لا يستطيع أحد الاطلاع عليها ScrollBars تحديد ظهور أو عدم ظهور أشرطة التمرير على حواف الأداة فى حالة النص المتعدد الاداة Label
تستعمل لإظهار نص لايستطيع المستخدم تغييره ، وهي بمعنى اللافتة أو الملصقة على الشيء للتوضيح أو الإعلام . أهم خصائصها الآتي : TextAlign محاذاة النص فى أيسر أو أيمن المنطقة المخصصة Text نكتب فيها النص الذى سيظهر بداخل أداة العناوين Backcolor تحديد لون الخلفية للنص المكتوب BrderStyle تحديد نوعية الإطار الذي يظهر حول النص Font تغيير نوع وحجم الخط وبعض التنسيقات على النص المكتوب ForeColor تحديد اللون المستخدم فى تلوين النص Cursor تحديد شكل مؤشر الفارة عند مروره على الأداة Visible تحديد إذا كانت الأداة متاحة للرؤية أو مختفية للمستخدم أثناء تشغيل التطبيق Auto size تعمل على توسيع حجم الأداة حسب النص المكتوب Enabled تحديد إذا كان العنوان متاح لما تكون قيمتها Active Name لإعطاء اسم للأداة من عند المبرمج لتستخدم فى كتابة لكود البرمجي وهو يأخذ الاسم الإفتراضى Label1 الاداة Button
أداة ( الزر ) غنية عن التعريف ، وهي الذي يضغط عليه المستخدم لتنفيذ أمر ما على البرنامج . أهم خصائصها الآتي : Text نكتب فيها النص الذي سيظهر بداخل أداة زر الأمر FlatStyle تستخدم لتغيير شكل زر الأمر Backgroundimage تستخدم لعرض صورة فى خلفية الأداة BorderStyle تحديد نوعية الإطار الذى يظهر حول النص Font تغيير نوع وحجم الخط وبعض التنسيقات على النص المكتوب ForeColor تحديد اللون المستخدم فى تلوين النص Cursor تحديد شكل مؤشر الفارة عند مروره على الأداة Visible تحديد إذا كانت الأداة متاحة للرؤية أو مختفية للمستخدم أثناء تشغيل التطبيق Auto size تعمل على توسيع حجم الأداة حسب النص المكتوب Enabled تحديد إذا كان العنوان متاح لما تكون قيمتها Active Name لإعطاء اسم للأداة من عند المبرمج لتستخدم فى كتابة لكود البرمجي وهو يأخذ الاسم الافتراضي Button 1 (( وسنبدأ ببرنامج صغير بهذه الأدوات الثلاث ))
وبعدها شرح عن المتغيرات وأهميتها في البرمجة وبعدها شرح لأدوات أخرى RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 27-03-17 المقصود من مثال البرنامج الصغير الآتي ليس الإحاطة بكل شيء دفعة واحدة ، بل القصد هو وضعك على الطريق أول الأمر ، لأن عامل الإبداع البرمجي لايمكن إغفاله ، فيمكن لهذا المثال البسيط أن يلهم أي مبرمج مبتدئ أفكارا أخرى لم أذكرها هنا ..
فكرة البرنامج هو ( جمع عددين ) وإظهار الناتج ،
أي ( العدد الأول ) + ( العدد الثاني ) = الناتج .
لتحقيق هذه الفكرة برمجيا نبحث عما لدينا من أدوات تناسب الفكرة . الأدوات المناسبة لتحقيق هذه الفكرة هي : - صندوق إدخال نصي ( عدد 2 ) - زر الأمر لحساب العددين - لافتة أو ليبل تظهر النتيجة النهائية صورة 3-1 نضع هذه الأدوات على الفورم ( كما شرحت سابقا عن كيفية وضع الأدوات على الفورم ) ، ثم ننسقها بشكل مناسب . يمكن لنا لتغيير الإسم الإفتراضي المكتوب على الزر أن نضع المؤشر على كائن الزر Button ، بعد فعل ذلك نلتفت إلى يمين نحو ( نافذة خصائص الأداة Properties ) .. صورة 3-2ننقر مربع الخاصية Text لنغير الكلمة الإفتراضية إلى كلمة يحددها المبرمج تناسب وظيفة الأداة . صورة 3-3ثم نأتي للمهم ، وهي الخطوة المحورية ( البرمجة ) : - نضع المؤشر على الكائن Button الموجود على الفورم - ننقر نقرتين متتاليتين ( نقر مزدوج ) على الكائن/الأداة ستظهر لنا نافذة الحدث Click للزر Button1 هكذا : Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
End Sub السطر الأول البادئ بالعبارة Private نسميه : جملة بداية الحدث ، وكما ذكرنا سابقا أنها تكتب بشكل تلقائي من VB.NET السطر الثاني وهو العبارة End Sub نسميه : جملة نهاية الحدث ، وهي أيضا تكتب أوتوماتيكيا من VB.NET جملتي الحدث ( الإبتدائية ، والنهائية ) لكل كائن أو أداة هي جمل تلقائية ضرورية لمفسر الفيجوال بيسك ، وما يفعله المبرمج هو فقط كتابة أوامره بينهما ولا دخل له بهما - إلا في حالات خاصة محدودة بخصوص السطر الأول فقط - نكتب بينهما هذه العبارة البرمجية : Label1.Text = Val (TextBox1.Text) + Val (TextBox2.Text)
صورة 3-4 شرح أرقام الصورة 3-4 : (1) الحدث ( نقرة واحدة Click ) للأداة Button1 أي عندما ننقر نقرة واحدة للزر المسمى Button1 نفذ العبارة البرمجية بعد سطر الحدث. (2) الأداة اللافتة Label1 وفي خاصيتها النصية Text ، تأخذ ( = ) الناتج الحاصل بعد علامة المساواة ( الإسناد ) . (3) الأمر Val يعني جعل مابين القوسين قيمة رقمية فقط ، وما بين القوسين هنا هو TextBox1.Text ، أي النص الموجود المُدخل في صندوق النص المسمى TextBox1 (4) الأمر Val مرة أخرى يعني جعل مابين القوسين قيمة رقمية فقط كما ذكر، وما بين القوسين هنا هو TextBox2.Text ، أي النص الموجود المُدخل في صندوق النص المسمى TextBox2 =======================
بعد كتابة الجملة البرمجية المذكورة لم يتبقى لنا سوى إختبار البرنامج ، أي تنفيذه بعد التصميم الحاصل له . وذلك كما ذكرت سابقا بالنقر على الزر المثلثي الأخضر كما في الصورة أدناه :
سنرى البرنامج بعد تشغيله ، ونكتب في المربعين أي رقمين نريد حاصل جمعهما ، ونضغط على زر ( جمع العددين ) هكذا :
صورة 3-5
وهكذا فإننا صممنا بهذه الخطوات البسيطة برنامجا يجمع لنا عددين ..
(( يُتبع ))
RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 01-05-17 كم أتأسف على تأخيري الطويل بسبب سفريات أعمال مفاجئة ... أرجو العذر ... وأعمل حاليا على تطوير فئة Class خاصة بالقرآن الكريم VB.NET وبحث الكلمات فيه ... بالمناسبة أين في المنتدى أستطيع فتح موضوع جديد عن الأكواد والفئات التي طورتها ؟؟ تحياتي وشكري للإهتمام RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - sendbad100 - 01-05-17 السلام عليكم اهلا وسهلا اخي / عبدالله الحمد لله على السلامة نورت المنتدى اعتقد قسم الاكواد مناسب . والقرار لك في النهاية لترى اي قسم يناسب ما تطرح والله الموفق RE: إكتشف معنا عالم الفيجوال بيسك دوت نت VB.NET - عبدالله خضر - 05-05-17 اشكرك اخي العزيز ... ارى ان افتح الموضوع في قسم الاكواد... لان الفئات والميديول تتكون اساسا من اكواد |