ตัวอย่างในบทความนี้ใช้ฟังก์ชันการลากเมาส์เพื่อวาดเส้นใน Java เป็นหลัก เพื่อให้บรรลุฟังก์ชันการวาดเส้น จะใช้ MouseListener และ MouseMotionListener ตามลำดับ และพิกัดเริ่มต้นและสิ้นสุดของการลากเมาส์จะได้รับจาก mousePressed () และ mouseReleased() นี่เป็นตัวอย่างที่ดีในการควบคุมเหตุการณ์เมาส์ Java
รหัสการใช้งานเฉพาะมีดังนี้:
import java.awt.*;import java.awt.event.*;import javax.swing.*;public class MouseDemo ขยาย JFrame ใช้ MouseListener, MouseMotionListener { int flag //flag=1 แสดงถึง Mouse Moved, flag=2 แสดงถึง Mouse ลาก int x = 0; int y = 0; starty, endx, endy;//พิกัดเริ่มต้นและพิกัดสิ้นสุดสาธารณะ MouseDemo() { คอนเทนเนอร์ contentPane = getContentPane(); contentPane.addMouseListener(นี้); contentPane.addMouseMotionListener(นี้); setSize(300, 300); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); /*รับพิกัดเริ่มต้นและสิ้นสุดของการลากเมาส์จาก mousePressed(), mouseReleased()*/ public void mousePressed(MouseEvent e) { startx = e.getX(); starty = e.getY(); } public void mouseReleased( MouseEvent e) { endx = e.getX(); endy = e.getY(); } โมฆะสาธารณะ mouseEntered (MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { } /*mouseMoved(),mouseDragged() รับแต่ละพิกัดของการเคลื่อนไหวของเมาส์และเรียก repaint() method*/ public void mouseMoved(MouseEvent e ) { flag = 1; x = e.getX(); y = e.getY(); } ทาสีสาธารณะ mouseDragged (MouseEvent e) { flag = 2; x = e.getX (); y = e.getY (); } การอัปเดตเป็นโมฆะสาธารณะ (กราฟิก g) { g.setColor (this.getBackground ()); g.fillRect(0, 0, getWidth(), getHeight()); // ล้างสีเนื้อหาหน้าต่างปัจจุบัน (g); } สีโมฆะสาธารณะ (กราฟิก g) { g.setColor(Color.black); if (flag == 1) { g.drawString("พิกัดของเมาส์: (" + x + "," + y + ")", 10, 50); , starty, endx, endy); } if (flag == 2) { g.drawString("ลากเมาส์พิกัดราคา: (" + x + "," + y + ")", 10, 50); g.drawLine (startx, starty, x, y); } } โมฆะสาธารณะหลัก (String [] args) { ใหม่ MouseDemo ( } )
ในระหว่างขั้นตอนการวาดเส้น โปรแกรมจะแสดงพิกัดของเมาส์เมื่อทำการลาก ผู้อ่านยังสามารถแก้ไขและปรับปรุงโปรแกรมตามความต้องการของตนเองเพื่อให้ใช้งานได้จริงมากขึ้น