PDA

View Full Version : سوال: جلوگیری از چاپ اعداد در Textbox



Sahandlab
یک شنبه 22 فروردین 1389, 13:05 عصر
سلام
آقایون کسی می تونه به من کدی معرفی کنه که فقط در Textbox اعداد بنویسد؟
تشکر می کنم کسی جواب بده

مهران رسا
یک شنبه 22 فروردین 1389, 18:00 عصر
سلام
آقایون کسی می تونه به من کدی معرفی کنه که فقط در Textbox اعداد بنویسد؟
تشکر می کنم کسی جواب بده
فکر می کنم عنوان تاپیک با سوالتون کاملاً متفاوت هست .



گوگل رو باز کرده و عبارت Ascii printable characters رو جستجو کنید
بر روی اولین لینک حاصل از نتایج جستجو کلیک کرده و در صفحه باز شده با استفاده از کلید های Ctrl+F ، پس از گشودن پنجره Find ، به دنبال عبارت "Ascii printable characters" بگردید .
در این قسمت جدولی حاوی فیلدهایی با نام های Binary - Oct - Dec - Hex - glyph مشاهده خواهید کرد . همونطور که در این جدول مشاهده می کنید کد اسکی "اعداد" موجود بر روی کیبورد بین اعداد 48 تا 57 هست .
نکته آموزشی : نتیجه میگیرم که Textbox ما باید کاراکترهایی که کد اسکی اونها فقط در بازه 48 تا 57 قرار داره رو از کاربر بپذیره .
در VB برای تشخصی کد اسکی کلید هایی که توسط کاربر ارسال میشند از رویدادی به نام KeyPress استفاده می کنیم . این رویداد دارای پارامتری به نام KeyAscii بوده که در زمان ارسال کلید از جانب کاربر ، کد اسکی مربوطه در قالب یک عدد صحیح در این پارامتر قرار خواهد گرفت .
ما فرض رو بر این گیریم که با دستورات شرطی موجود در VB آشنایی دارید . پس نهایتاً کدی به شکل زیر خواهیم داشت :



Private Sub Text1_KeyPress(KeyAscii As Integer)
If Not (KeyAscii >= 48 And KeyAscii <= 57) Then KeyAscii = 0
End Sub


حتماً متوجه شدید که اگر در تایپ اعداد اشتباهی رخ بده از دست کلیدهای Delete و Backspace کاری بر نمیاد . پس برای حل این مشکل مجدداً به جدول کد های اسکی برگردید و تنظیمات دلخواه رو با عبارات منطقی پیاده سازی کنید .


موفق باشید

xxxxx_xxxxx
یک شنبه 22 فروردین 1389, 18:21 عصر
بارها تذکر داده شده که قبل از ایجاد تاپیک جستجو کنید.
قوانین سایت را بخوانید.

یک جعبه متن می خوام که فقط عدد وارد بشه (http://barnamenevis.org/forum/showthread.php?t=9972)
چیکار کنم در TEXTBOX فقط بشه عدد نوشت ؟ (http://barnamenevis.org/forum/showthread.php?t=175916)
چگونه می شود کار کرد که فقط بشه تو تکست باکس عدد وارد کرد ؟ (http://barnamenevis.org/forum/showthread.php?t=164391)
وارد کردن فقط حروف یا عدد در یک text یا label (http://barnamenevis.org/forum/showthread.php?t=182455)
در تكست باكس فقط عدد تايپ كنيد (http://barnamenevis.org/forum/showpost.php?p=688697&postcount=29)
http://barnamenevis.org/forum/showpost.php?p=696312&postcount=43

تاپیک قفل شد/