เมื่อไม่นานมานี้ฉันตอบคำถามสแต็กล้นเกี่ยวกับตัวอักษรที่แสดงคำในภาษาลาวอย่างไม่เหมาะสม ฉันเขียน GUI สวิงเพื่อตอบคำถามสแต็กล้น
หากคุณไม่คุ้นเคยกับ Java Swing Oracle มีบทช่วยสอนที่ยอดเยี่ยมเพื่อให้คุณเริ่มต้นสร้าง GUI ด้วย JFC/Swing ข้ามส่วน NetBeans
ฉันตัดสินใจที่จะเขียนตัวเลือกแบบอักษรทั่วไป GUI ด้วยเหตุผลสองประการ
ฉันต้องการเลือกแบบอักษรสคริปต์สำหรับ GUI ที่แตกต่างกันที่ฉันกำลังสร้าง ฉันต้องใช้ OpenOffice เพื่อดูแบบอักษรที่มีอยู่
ฉันคิดว่ามันจะทำให้แอปพลิเคชั่นสวิงที่ดีสำหรับ GitHub
นี่คือตัวเลือกฟอนต์ GUI ที่แสดงตัวอักษรบนคอมพิวเตอร์ของฉันแสดงวลีภาษาอังกฤษ ฉันมีรูปแบบตัวอักษร 432 ตัวที่สามารถแสดงข้อความตัวอย่างจาก JTextField

ที่ด้านบนของ GUI คุณสามารถพิมพ์หรือคัดลอก / วางข้อความตัวอย่าง คุณสามารถเลือกจากขนาดตัวอักษรทั่วไปหลายขนาด หลังจากที่คุณคลิกซ้ายบนแบบอักษร JButton คุณจะเห็นตัวอย่างของตัวอักษรแต่ละตัวและที่ด้านบนจำนวนฟอนต์ทั้งหมดที่มีอยู่ที่ Java รับรู้
นี่คือตัวเลือกฟอนต์ GUI ที่แสดงว่าตัวอักษรบนคอมพิวเตอร์ของฉันแสดงคำในภาษาลาว คุณสามารถดูกล่องในตัวอย่างข้อความ jtextfield ฟอนต์ GUI Swing GUI เริ่มต้นไม่สามารถแสดงคำได้ มีเพียง 11 รูปแบบตัวอักษรในระบบของฉันเท่านั้นที่สามารถทำได้และมีเพียงฟอนต์ Dejavu เท่านั้นที่สามารถแสดงคำด้วยร่ายมนตร์ในตำแหน่งที่ถูกต้อง

GUI สวิงประกอบด้วยสี่ชั้น FontSelectorgui, Fonttablecellrenderer, FontdisplayListener และ FontdisplayRunnable
คลาส FontSelectorgui เป็นคลาส GUI หลัก jframe, entry jpanel และการแสดง jpanel ถูกสร้างขึ้นในชั้นเรียนนี้ JFrame ถูกสร้างขึ้นในวิธีการเรียกใช้และ JPanels ถูกสร้างขึ้นในวิธีการแยกต่างหาก รายการ jpanel ใช้ boxlayout ในขณะที่จอแสดงผล jpanel ใช้ borderlayout
คลาส FonttableCellrenderer เป็นคลาส Renderer JTable Cell Renderer ที่รับผิดชอบในการแสดงผลเซลล์ JTable ในแบบอักษรที่แตกต่างกัน
คลาส FontdisplayListener ตอบสนองต่อ JButton ของรายการ JPanel เนื่องจากการสร้างแถว jtable ใช้เวลาสักครู่การอัพเดท fontdisplayrunnable rows jtable rows ในเธรดแยกต่างหาก การทำเช่นนี้ทำให้ GUI ตอบสนองได้