บทความนี้แบ่งปันรหัสเฉพาะของการแกว่ง Jtextarea scrollbar และการปรับขนาดข้อความสำหรับการอ้างอิงของคุณ เนื้อหาเฉพาะมีดังนี้
เมื่อ jtextarea พร้อมแถบเลื่อนจะถูกเพิ่มด้วยเหตุการณ์สกรอลล์เช่นการปรับสเกล Ctrl+Wheel เหตุการณ์สกรอลล์ที่เพิ่มเข้ามาและเหตุการณ์การซูมเลื่อนจะตรง จะทำให้เหตุการณ์ทั้งสองนี้เกิดขึ้นพร้อมกันได้อย่างไรโดยไม่รบกวนกันและกัน? นั่นคือข้อความจะไม่เลื่อนขึ้นและลงเมื่อแถบเลื่อนขยายและลดลง
นำเข้า Javax.swing.*; นำเข้า Java.awt.*; นำเข้า java.awt.event.mouseadapter; นำเข้า java.awt.event.mousewheelevent; นำเข้า java.awt.event.mousewheellistener; คลาสสาธารณะ JTawheel {JFrame JF; jtextarea jta; JScrollpane JSP; Mousewheellistener Syswheel; สาธารณะ jtawheel () {jf = new jFrame ("สเกลสเกล"); JF.SetBounds (500,500,600,400); jta = new jtextarea (); jsp = ใหม่ jscrollpane (jta, jscrollpane.vertical_scrollbar_as_needed, jscrollpane.horizontal_scrollbar_as_needed); syswheel = jsp.getmousewheellisteners () [0]; // รับการเลื่อนระบบเหตุการณ์ jsp.removemousewheellistener (syswheel); // ลบการเลื่อนระบบเพิ่ม jsp.addmousewheellistener (เหตุการณ์ใหม่ (ใหม่); JF.Add (JSP); jf.setDefaultCloseOperation (jframe.exit_on_close); jf.setVisible (จริง); } เหตุการณ์ในชั้นเรียนส่วนตัวขยาย MouseAdapter {@Override โมฆะสาธารณะ Mousewheelmoved (Mousewheelevent e) {ถ้า (E.IsconTroldown ()) {// เมื่อกดปุ่ม Ctrl if (e.getwheelrotation () <0) {// ถ้าแถบเลื่อนไปข้างหน้าให้ขยายข้อความ jta.setFont (ตัวอักษรใหม่ (f.getfamily (), f.getstyle (), f.getSize ()+1)); } อื่นถ้า (e.getwheelrotation ()> 0) {// แถบเลื่อนหดตัวลงข้อความย้อนกลับ jta.setfont (ตัวอักษรใหม่ (f.getfamily (), f.getstyle (), f.getSize ()-1)); }} else {// เมื่อไม่ได้กด Ctrl มันจะเลื่อนสำหรับระบบ jsp.addmousewheellistener (syswheel); Syswheel.mousewheelmoved (E); // ทริกเกอร์เหตุการณ์การเลื่อนระบบ jsp.removemousewheellistener (Syswheel); }} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {new JTawheel (); -ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น