السلام عليكم
سوف نبدا الان انشالله كيف نرسل جمله الى البك وكيف يستقبلها البك ويرد علينا البك بجمله اخري وينفذ تشغيل ليد معين
الان سنغطي موضوع الانترفيس بالكامل بالفجوال بيسك 6 وبعد ذلك سنرى موضوع البك
على بركة الله
مقدمه :
طبعاايوجد عدة طرق للوصول الى منفذ الكوم منها MSComm وهي موجوده فى بيئه فجوال بيسك واتمنى ان تكونو عرفتو كيف تخرجونها من خلال كتاب الاستاذ صهيب البلال
كما يمكننا الوصل إليه باستخدام توابع API أو المشغلات Drivers أو مكتبات الربط الديناميكية DLL .
ولكن هنا سنتكلم عن هذه الاداه الممتازه والتي تتيح لنا حتى التخاطب مع الهاتف عن طريق ATCOMMAND
وهي الاداه MSComm .
الان سندخل الى بعض الاساسيات لاداة من ادوات الفجوال
يوجد اداه اسمها text box وهي اداه مهمة جداا مستحيل ان يخلو منها برنامج كامل
وهذه الاداه هى التي يمكننا الكتابه فيها لارسال جمله وهي نفس الاداه التي ستستقبل الحروف من البك
ونلاحظ عند ادراجها على الفورم سنجد انه مكتوب فى داخلها 1 text ولو ادرجنا واحده اخرى ستكون text2 وهكذاا.. وهذا الاسم المكتوب بداخلها يمكن حذفه وسنعرف ذلك فى الشرح
ولكن ماذا لو ادرجنا تيكست واحده فقط ثم اردنا ان ناخذها كبي ثم بست على الفورم ..ستظهر لنا رساله تخبرنا هل تريدها مصفوفه او لا
ولكن متى نجيب عن لا ومتى نجيب عن نعم
اي متى نستخدم التيكست بوكس كمصفوفه او نريدها مفرده
ماذا يعني هذا
الفرق هو فى تسلسل رقم المصفوفه بمعني لو اردنا ان نجعل كود معين يحدث لجميع التكستات فى نفس الوقت او نريد عمل مصفوفه للارقام او للحروف لكي نستقبل كل رقم او كل حرف فى مصفوفه تكست منفصل ولكن بالتتابع فى هذه الحاله سوف نختار نعم
وفى حالة اننا لا نريد ان نستخدم مصفوفه او ان عدد التكست بوكس سيكون قليل فلا داعي لان نختار نوع مصفوفه
وكذلك لو اردنا ان نستعمل عدد كبير من التكست بوكس يفضل اختيار نوع مصفوفه
ولكن كيف نعرف ان التكست بوكس التي امامي هى مصفوفه او مفرده
بكل بساطه ننقر عليها ونلاحظ من خصائصها هل لها رقم اندكس او لا
ما هو رقم الاندكس (index) رقم الاندكس هو الذي يحدد رقم المصفوفه
المهم من خلال الصوره نلاحظ ان هذه التكست ليست نوع مصفوفه وانما هي مفرده
وان لم تظهر قائمه الخصائص ..رايت كليك على الاداه ثم خصائص
الان كيف نعرف انها نوع مصفوفه ..نعرف ذلك من خلال وجود رقم الاندكس كما فى الصوره المرفقه
ولو نقرت نقره واحده على التكست الاخرى سوف تلاحظ ان رقمها اصبح صفر وهكذا
انتهينا من التعرف على هذه الاداه قليلاا
الان سوف نتحدث عن الحدث الموجود باخلها
الان مثال بسيط جداا لكي نتعرف اكثر على الاداه تكست بوكس
سوف نستعمل نفس الكود فى المشاركه السابقه وهو اضهار رساله
الان سوف ننقر نقرتين متتاليتين هلى التكست بوكس ..طبعاا عرفنا الان اي اده لو نقرنا عليها نقرتين متتاليتين سيظهر لنا حدث هذه الادا
سوف يظهر لنا الحدين الاتيين.. هاذين الحدين هما حدث التغيير (change ) وسوف تفهم كيف نغير الاحداث
كود:
Private Sub Text1_Change(Index As Integer)
End Sub
ماذا يحث لو وضعنا كود الحدث داخل الحدثين ...يعني متى سينفذ الحدث هذا الامر
كود:
Private Sub Text1_Change(Index As Integer)
MsgBox " السلام عليكم ورحمة الله وبركاته"
End Sub
الذي يحد لا شي ولكن عند محاولتك لكتابة اي شئ على التكست ستظهر الرساله
وهذا الحدث يسمي حدث التغيير..بمعنى انه يمكننا ان ننفذ الكود المطلوب حتى وانت تكتب
الان استفدنا طريقه اخرى لتنفيذ الكود وهذا ينفعنا مثلاا لو اردنا ان نرسل الحروف عن طريق الكتابه فقط
طبعاا كانت اهذا المثال للتكست بوكس نوع مفرد او نوع عادي اي ليست نوع مصفوفه
دعونا الان نجرب نفس الكود على تكست نوع مصفوفه
سوف ناخذ هذه التكست كبي ثم نعمل لها بست على نفس الفورم ثم كرر عمليه البست مثلاا ثلاث مرات او 5 او كما تريد
الان انقر على اي تكست فيها ثم ضع الكود السابق بين الحدين
الان اذهب الى تكست اخرى وانقر مرتين عليها ماذا تلاحظ ستلاحظ ان الكود موجود فى جميع التكستات لان التكست نوع مصفوفه واي تكست سوف تكتب عليها سينفذ الكود
الان دعونا نلقي نظره سريعه جداا على احداث اخرى للتكست
من خلال قائمة الحدث ستجدها فى بيئة الكود فى الاعلي
لو فتحنا هذه القائمه ونختار مثلاا الحدث DblClick انقر عليه
سيظهر لك حدين جديدين ونضع الكود بين الحدين
هذه الحدث هو خاص للكلك على التكست
كود:
Private Sub Text1_DblClick(Index As Integer)
MsgBox " السلام عليكم ورحمة الله وبركاته"
End Sub
الان لو عملنا فقط دبل كلك على التكست سينفذ الكود
الان سنختار من نفس القائمه حدث اخر (لا ننسى ان نلغي الحدث الاول حتى لا نتلخبط فى تنفيذ الكود)
مثلاا الحدث Click
سيظهر لنا حدين اخرين نضع الكود بينهما
فلن ينفذ الكود الا عند عمل كليك على التكست
يمكنك ان تجرب باقي الاحداث الباقيه فكل منها ينفذ عند حركة معينه
الان اعتقد ان اصبح لدينا بعض المهارات لكي نتعامل مع التكست
تنبيه مهم :
الاحداث التي طبقناها مثل حدث الدبل كلك وحدث الكلك وحدث الكتابه يمكن تطبيقه على اي اده حتى على الفورم نفسه
سوف انهي التحدث عن هذه الاداه من خلال شئ اخير وهو كيف نشير على هذه الاداه ونحن نكتب الكود
لكي يفهم البرنامج انك تتحدث عن تكست معينه يجب اولاا ادراجها
ثم ناتي الى كتابة الكود فى اي اداه تريدها
ياسيدي اقولك حاجه..سوف نعمل مثال بسيط اخرلا بسيط وهو ان نضع عدد ثلاث تكست بوكس سندخل ارقام فى عدد 2 بوكس ويكون ناتج الجمع فى البوكس الثالثه
اولاا سندرج ثلاثه تكست بوكس ونحذف الكتابه التي ظهرت داخل التكست
وندرج زر الاوامر ..طبعا التكست ستكون نوع عادي وليست مصفوفه
ننقر نقرتين متتاليتين على زر الاوامر
ونكتب الكود التالي بين الحدين
كود:
Private Sub Command1_Click()
Text3.Text = Val(Text1.Text) + Val(Text2.Text)
End Sub
وشكل البرنامج هكذا
طبعاا يمكننا ان نلغي زر الاوامر وناخذ الكود الذي بداخله ونضعه فى حدث التكس الاوله والثانيه فسوف يبدا بالجمع بمجرد ما ان تكتب الرقم
اعتقد الان يمكننا الدخول فى برنامج الاستقبال بدون مشاكل ولو نسبياا وانا مستعد لا استفسار ولا تخجل حتى من الاسئله البسيطه
المشاركه القادمه سوف ندخل فى موضوع الارسال والاستقبال مباشره