شرح مربع الادخال Text Box والشريط Label
ما هو مربع الادخالText في فيجوال بيسيك؟
هي أداة تضاف الى النموذج Form
في فيجوال بيسيك بهدف اخال البيانات فيها كالأرقام، سواء أعداد حقيقية أم صحيحة،
أو نصاً أو رمز أو أي مدخل من لوحة المفاتيح.
ما الهدف من استخدام مربع الادخال؟
توفير نافذة للمستخدم تتيح له ادخال البيانات من لوحة المفاتيح والتي
تعتبر بدورها متغيرات ليتم التعامل معها برمجيا لأهداف مختلفة مثل ادخال العدد 3
لحساب مربعه أي العدد 9.
كيف يتم استدعاء وتعريف مربع الإدخال Text؟
من شريط الأدوات Toolbox
يتم اختيار الأداة Text
ورسمها وتحديد أبعادها باستخدام الفأرة Mouse،
أما برمجيا فيتم تعريف واستدعاء الأداة Text
كالتالي:
text1.Text
حيث أن الكلمة text1
هي اسم أول مربع ادخال تم ادراجه. أما الكلمة Text فهي العائلة التي ينتمي اليها صندوق الادخال
text1.
كيف يتم تخزين قيمة من مربع الادخال text1 داخل متغير؟
نستخدم الأمر أو الدالة Val()
والتي هي اختصار للكلمة Value
أي قيمة ما داخل القوسين كما في المثال التالي:
عرف المتغير x على أنه عدد صحيح
|
Dim x As Integer
|
استخرج القيمة المدخلة من text1 وخزّنها في x
|
x =
Val(text1.Text)
|
اطبع قيمة المتغير x
|
Print x
|
في المثال السابق، إذا قام المستخدم بإدخال أي عدد داخل مربع الادخال text1
فإن ذلك العدد سيتم تخزينه في المتغير الصحيح x باستخدام الدالة Val(text1.Text)، وبعدها ستتم طباعته كما
في الأمر Print x. والشكل التالي يوضح
المغزى:
كما نلاحظ أن الناتج المطبوع يأخذ مكانه دوما في الجزء الأيسر العلوي
من الشاشة Form، لذلك يجب تخصيص مكان
لوضع الناتج المحسوب داخله. وهنا يأتي دور الأداة Label، حيث يتم ادراجها من القائمة Toolbox الى أي مكان على سطح ال Form، وبالتالي نحدد في هذه الحالة أين نريد أن
يكون الناتج أو الجواب المحسوب والمطبوع.
كيف يتم استدعاء الأداة Label
برمجيا؟
عند فتح نافذة البرمجة، يتم استدعاء الـ Label1 بالأمر Label1.caption
والـ Label2
بالأمر Label2.caption وهكذا.
أما إذا أردنا تخزين وطباعة ناتج المتغير X داخل label1 فنكتب الأمر التالي:
Label1.caption
= X
مثال يشمل الأداة Text
والأداة Label:
قم بإدخال أي عدد داخل مربع الادخال Text1 وعند الضغط على زر الـ Command1 قم بعرض الجذر التربيعي في label1 للعدد الذي تم إدخاله في Text1؟
عرف المتغير X على أنه عدد حقيقي (أي عدد)
|
Dim X
as Double
|
استخرج القيمة المدخلة في مربع الادخال text1 وضعها في X
|
X =
Val(text1.Text)
|
ضع قيمة المتغير X في شريط العرض Label1
|
Label1.caption
= X
|
نلاحظ أنه في حال استخدام Label1.caption لم يتم التطرق الى الأمر Print، فالأمر البرمجي Label1.caption يقوم بعرض محتويات المتغير الذي تمت المساواة
به مباشرة كما في المثال السابق.
مثال آخر فيه text1, text2 و label1
ماذا لو أردنا جمع العددين المدخلين في مربعي الادخال text1 و text2 على التوالي ووضع ناتج جمعهما في Label1 عند الضغط على الزر command1؟
في تلك الحالة سنقوم بكتابة الأوامر البرمجية التالية داخل الزر Command1
Private Sub Command1_Click()
Dim x As Double
Dim y As Double
x = Val(Text1.Text)
y = Val(Text2.Text)
Label1.Caption = x + y
End Sub
والشكل التالي يوضح الواجهة الرسومية الخاص للبرنامج أعلاه:
مقارنة بين الأداة Text والأداة Label:
الجدول التالي يوضح بعض من أوجه الاختلافات بين مربع الادخال text1 والشريط label1
وجه المقارنة
|
مربع الادخال Text1
|
الشريط Label1
|
رمز الأداة في شريط الأدوات
|
||
الهدف من استخدامها
|
تمكين المستخدم من ادخال البيانات بهدف
معالجتها
|
عرض البيانات المخزنة أو التي تم
معالجتها
|
إمكانية التعديل على البيانات بداخلها
|
يمكم
التعديل
|
لا يمكن
التعديل
|
إدخال البيانات
|
نعم
|
لا يمكن ادخال البيانات عن طريقه
|
استخدامها كمخرجات
|
نعم
|
نعم
|
طريقة الاستدعاء
|
بدلالة .Text
|
يتم العرض بدلالة Caption
|