15-10-12, 08:23 AM
استقبال أرقام من لوحة المفاتيح .
سنضبط أولاً خاصية KeyPreview للفورم بحيث تصبح True وبهذا أي ضغطة على الكيبورد في هذا الفورم يحس بها حدث Key_Press لهذا الفورم .
والآن نعرف أن حدث Key_Press يستقبل متغيراً هو كود آسكي Ascii للزر المضغوط ، ومن خلال ذلك نستطيع أن نضغط على الزر المقابل لها .
فمثلاً الرقم 48 يعني الصفر ، من أجل ذك سنضغط على Command1(0) بالشكل التالي :
سنضبط أولاً خاصية KeyPreview للفورم بحيث تصبح True وبهذا أي ضغطة على الكيبورد في هذا الفورم يحس بها حدث Key_Press لهذا الفورم .
والآن نعرف أن حدث Key_Press يستقبل متغيراً هو كود آسكي Ascii للزر المضغوط ، ومن خلال ذلك نستطيع أن نضغط على الزر المقابل لها .
فمثلاً الرقم 48 يعني الصفر ، من أجل ذك سنضغط على Command1(0) بالشكل التالي :
كود :
[align=right]Command1(0).Value = True[/align]وكذلك مع باقي الأرقام والتي تأخذ أرقاماً من 48 وحتى 57 ، أي الرقم + 48 .
ومن العلاقة السابقة نستطيع أن نكتب الكود التالي في حدث Key_Press :
ومن العلاقة السابقة نستطيع أن نكتب الكود التالي في حدث Key_Press :
كود :
[align=right]If KeyAscii < 58 And KeyAscii >= 48 Then
Command1(KeyAscii - 48).Value = True[/align]والآن نكمل بمزيد من التخصيص ، فـ 46 تعني الفاصلة ، 42و43و45و47 العمليات الأربع ، 27 زر Esc والذي سنجعله يرمز لـ C في الآلة ، أيضاً 13 يرمز لـ Enter والذي سيكون = .
من أجل ذلك نكتب الكود التالي :
من أجل ذلك نكتب الكود التالي :
كود :
[align=right]ElseIf KeyAscii = 46 Then
Command1(10).Value = True
ElseIf KeyAscii = 13 Then
Command4.Value = True
ElseIf KeyAscii = 42 Then
Command3(2).Value = True
ElseIf KeyAscii = 43 Then
Command3(0).Value = True
ElseIf KeyAscii = 45 Then
Command3(1).Value = True
ElseIf KeyAscii = 47 Then
Command3(3).Value = True
ElseIf KeyAscii = 27 Then
Command5(1).Value = True[/align]وأخيراً 8 ترمز لـ BackSpace . وسنستخدم لذلك دالة Left والتي ستقتص نصاً من اليسار بطول النص - 1 ، وذلك بالشكل التالي :
كود :
[align=right]ElseIf KeyAscii = 8 Then
If Len(Text1.Text) <> 0 Then Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)[/align]بهذا تكون آلتنا جاهزة لاستقبال الأرقام من لوحة المفاتيح .
والملف مرفق الآن بعد التعديلات الأخيرة ...
والله الموفق ...
والسلام عليكم ورحمة الله وبركاته .
والملف مرفق الآن بعد التعديلات الأخيرة ...
والله الموفق ...
والسلام عليكم ورحمة الله وبركاته .
