ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

Post a reply

Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by touleg » 16/08/2011 1:46 pm

งั้นก็ใช้วิธีการ Map Message เอา โดยการ

1. เลือกที่คลาส ในหน้าต่าง Class View
2. ที่หน้าต่าง Properties เลือกรูปสี่เหลี่ยมด้านบน (CMappingView)
3. เลือก WM_KEYDOWN ด้านข้างเลือก event OnKeyDown

จากนั้นมันจะขึ้นฟังก์ชั่นใน โค้ดของเรา จะเขียนตรวจสอบอะไรก็เขียนลงไปในนั้น

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by mr.a » 16/08/2011 11:14 am

ผมลอง disable แล้วครับ แต่ทั้งคีย์บอร์ด และ scanner ไม่สามารถป้อนข้อมูลลงไปได้เลยครับ

ผมต้องการประมาณว่ารับข้อมูลตัวเลขจาก scanner เท่านั้นครับ ส่วนตัวอักษรอื่นจะรับจาก คีย์บอร์ดครับ

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by touleg » 15/08/2011 4:23 pm

disable TextBox นั้นไม่ให้พิมพ์ได้ซิครับ

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by mr.a » 15/08/2011 2:05 pm

ขอโทษที่เขียนไม่ครบถ้วนครับ คืออย่างนี้ครับ ผมมี edit box (VC ++)ตัวหนึ่ง ซึ่งรับค่าจาก การคีย์ข้อมูลโดย คีย์บอร์ดหรือ 2D scanner

ผมต้องการที่จะป้องกันการคีย์ ตัวเลขจากทางคีย์บอร์ด โดยที่ตัวอักษรอื่นบนคีย์บอร์ดยังใช้งานได้อยู่

แล้วใช้ 2D scanner เป็นตัวป้อนข้อมูลอย่างเดียว ไม่แน่ใจว่าสามารถทำได้หรือเปล่าครับ

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by touleg » 09/08/2011 12:22 pm

เค้าโพสที่บอร์ดนี้ ไม่น่าจะเป็น web app นะครับ

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by jataz2 » 09/08/2011 11:37 am

เข้าไปดูตัวอักษรใด คือหมายเลข keycode อะไร ได้ที่นี่ครัับ http://www.webonweboff.com/tips/js/event_key_codes.aspx

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by jataz2 » 09/08/2011 11:30 am

เป็น web app หรือ window app ครับ

ถ้าเป็น web app ก็ใช้ java script เข้ามาช่วยได้ครับ

ด้านล่างนี้เป็นตัวอย่างที่ใช้ javascript บังคับ ให้กรอกได้เฉพาะตัวเลขลงใน textbox

คือให้กรอกได้เฉพาะ keycode หมายเลข 48 ถึง 58 ซึ่งก็คือตัวเลข

ดังนั้นจาก logic นี้ก็เอาไปเเก้ไขได้ง่ายครับ เพียงเเค่หา keycode ของตัวอักษรมาใส่เเทน

ก็ใช้ได้เเล้วครับ

Code: Select all

<html>
   <head>
       <script language="javascript">
          function forceNumber(event)
          {
              var keyCode = event.keyCode ? event.keyCode : event.charCode;
              if((keyCode < 48 || keyCode > 58) && keyCode != 8 && keyCode != 9)
                 return false;
          }
    </script>
   </head>
   <body>
         <asp:TextBox ID="txtMsisdn" runat="server" MaxLength="11" onkeypress="return forceNumber(event);" ToolTip="กรอกเบอร์โทร"></asp:TextBox>
   </body>
</html>

Re: ต้องการ ปล็อค การ คีย์ ตัวเลข บนคีย์บอร์ด

by touleg » 08/08/2011 5:07 pm

เวลาผู้ใช้พิมพ์เข้าไปก็ตรวจสอบว่าเป็นตัวเลข 0-9 หรือป่าว ถ้าไม่ใช่ถึงจะทำต่อไป

Top