วิธีจับภาพการกดแป้นพิมพ์ใน Java

ผู้เขียน: Morris Wright
วันที่สร้าง: 28 เมษายน 2021
วันที่อัปเดต: 1 ธันวาคม 2024
Anonim
15.Grabbing Boolean input from keyboard in java
วิดีโอ: 15.Grabbing Boolean input from keyboard in java

เนื้อหา

การจับแป้นพิมพ์ใน Java ไม่เหมือนกับการรับอินพุตคีย์บอร์ด ในสถานการณ์ส่วนใหญ่โปรแกรมยอมรับการป้อนข้อมูลของผู้ใช้จากแป้นพิมพ์ในรูปแบบของตัวอักษรที่พิมพ์ได้ ตัวอักษรตัวเลขและสัญลักษณ์จะอ่านและจัดเก็บสะท้อนกลับไปที่หน้าจอหรือใช้เพื่อเริ่มต้นการดำเนินการอื่น ๆ ภายในโปรแกรม เมื่อจับภาพการกดปุ่มที่ไม่สามารถพิมพ์ได้ลูกศรทิศทางและปุ่ม Tab ตัวอย่างเช่นโปรแกรมจะต้องตีความโดยอินพุทและส่งไปยังไลบรารีอินพุต / เอาท์พุตที่เหมาะสมเพื่อจัดการ


คำสั่ง

จับภาพและประมวลผลอักขระที่ไม่สามารถพิมพ์ได้ใน Java (รูปภาพ Creatas / รูปภาพ Creatas / Getty)
  1. สร้างฟังก์ชั่นเพื่อตรวจจับการกดแป้นและกำหนดตัวแปรเพื่อติดตามเหตุการณ์:

    บูลีนพับลิกสาธารณะ (เหตุการณ์อีคีย์ int) {

    ตัวแปรบูลีนส่งกลับเฉพาะค่าจริงหรือเท็จ สถานะเริ่มต้นของตัวแปรประเภทนี้เป็นเท็จ การกดปุ่มจะเปลี่ยนค่าเป็นจริง ฟังก์ชั่นนี้จะส่งกลับค่าเทียบเท่า ASCII และเก็บไว้ในตัวแปร "key" จำนวนเต็ม

  2. ตรวจสอบว่าคีย์ที่คุณกดเป็นอักขระที่พิมพ์ได้หรือไม่:

    if (key> 31 && key <127) {

    อักขระ ASCII ที่พิมพ์ได้มีค่าระหว่าง 31 ถึง 127 อักขระอื่น ๆ ทั้งหมดต้องการการจัดการเป็นพิเศษ

  3. หากเป็นตัวอักษรที่พิมพ์ได้ให้ส่งค่าคีย์ไปที่โปรแกรม:

    return validateText (กุญแจ); }

  4. แจ้งให้โปรแกรมการเรียกทราบว่าไม่สามารถพิมพ์คีย์และต้องการการประมวลผลพิเศษหากอยู่นอกค่า ASCII ที่ระบุ:


    กลับเท็จ }

เคล็ดลับ

  • เมื่อค่าเท็จถูกส่งคืนไปยังโปรแกรมการเรียกใช้ฟังก์ชัน keyDown () จะส่งผ่านค่าคีย์ไปยังฟังก์ชัน superclass ที่มีอยู่ในไลบรารีคลาส Java Abstract Window Toolkit (AWT) ซึ่งรับผิดชอบการแสดงผลคีย์ที่ไม่สามารถพิมพ์ได้
  • ส่วนรหัสที่สมบูรณ์:
  • บูลีนพับลิกสาธารณะ (เหตุการณ์อีคีย์ int) {
  • if (key> 31 && key <127) {
  • ส่งคืน validateText (คีย์)
  • }
  • กลับเท็จ
  • }