تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
قبول الأعداد فقط
#5
السلام عليكم...

يوجد جدول يسمى جدول رموز آسكي (ASCII Code Table) الذي يحتوي على رموز الكتابة (characters) التي تشمل الحروف و الأرقام و بقية الرموز الكتابية الأخرى مثل + و * و @ ... إلخ.

قبل ظهور ما يعرف بترميز الـ Unicode كان كل رمز تمثله بايت واحدة، و لذلك فإن جدول رموز آسكي يضم 256 رمزاً (حجم البايت) مرقمة من 0 إلى 255. النصف الأول من الجدول (0 - 127) يضم رموز التحكم و حروف اللغة الإنجليزية الكبيرة و الصغيرة و الأرقام من 0 إلى 9 و العديد من رموز الكتابة الأخرى (& % ? } - = ... إلخ). و النصف الثاني يستعمل لحروف اللغات الأخرى غير الإنجليزية (العربية، الفرنسية، ... إلخ) بالإضافة إلى رموز موسعة أخرى.

مثلاً الحرف a رقمه في الجدول 97 و الحرف A رقمه 65 و الحرف F رقمه 70 ... إلخ. ذلك يعني أنه عندما نضغط مفتاح الحرف A فإن لوحة المفاتيح ترسل العدد 65 إلى نظام التشغيل، الذي بدوره يرسله إلى برنامجنا عبر إجراء الحدث KeyPress (أي الإجراء الذي يتم استدعاؤه عند ضغط مفتاح).

في جدول آسكي، الرموز من 0 إلى 31 هي رموز تحكم (Control Characters) أي ليس لها صورة كتابية و لكنها تؤدي وظيفة ما. مثلاً الرقم 8 هو رقم المفتاح BackSpace. أي عندما نضغط المفتاح BackSpace فإن برنامجنا يستقبل الرقم 8 كرمز لذلك المفتاح المضغوط. أيضاً الرقم 9 هو رقم المفتاح Tab. أما ضغط المفتاح Enter فيؤدي إلى إرسال قيمتين متتاليتين: 13 (يسمى Carriage Return أو CR) ثم 10 (يسمى LineFeed أو LF)، و لهذا نجد رمز المفتاح Enter في VB هو vbCrLf.

الأرقام (0 - 9) تحتل في الجدول المواقع من 48 (للصفر) إلى 57 (للتسعة).

في إجراء الحدث KeyPress يمثل البارامتر KeyAscii قيمة آسكي للمفتاح المضغوط. و لهذا في الكود السابق ننظر إذا كان المفتاح المضغوط هو أحد مفاتيح رموز التحكم فلا يهمنا أمره (بل نحن نحتاج بعضها مثل المفتاح BackSpace للمسح). ثم نختبر ما إذا كانت قيمة آسكي للمفتاح المضغوط خارج نطاق القيم المخصصة للأرقام (أي من آسكي 48 إلى آسكي 57). إذا كانت قيمة آسكي خارج هذا النطاق المخصص للأرقام فإننا نضبط قيمة البارامتر KeyAscii على صفر، و هذا يؤدي إلى رفض الرمز، أي عدم قبوله و عدم كتابته.

نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد }}}


الردود في هذا الموضوع
قبول الأعداد فقط - بواسطة ناجي إبراهيم - 19-09-13, 10:22 PM
RE: قبول الأعداد فقط - بواسطة VB_Coder - 20-09-13, 04:33 AM
RE: قبول الأعداد فقط - بواسطة baderb14 - 26-10-13, 10:00 AM
RE: قبول الأعداد فقط - بواسطة مبرمج مبتدئ - 16-01-14, 06:50 AM
RE: قبول الأعداد فقط - بواسطة ناجي إبراهيم - 16-01-14, 06:14 PM
RE: قبول الأعداد فقط - بواسطة مبرمج مبتدئ - 17-01-14, 09:35 AM
RE: قبول الأعداد فقط - بواسطة king2512010 - 14-06-14, 12:01 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  قبول حروف عربية فقط (مع إضافة خيارات) ناجي إبراهيم 6 5,933 20-03-18, 05:02 PM
آخر رد: tichouckt

التنقل السريع :


يقوم بقرائة الموضوع: