この記事の例では、主にマウスをドラッグして線を描く機能をJavaで実装しています。線を描く機能を実現するために、それぞれMouseListenerとMouseMotionListenerという実装を使用し、マウスドラッグの開始座標と終了座標をmousePressedで取得します。 () とmouseリリース()。これは、Java マウス イベントをマスターする良い例です。
具体的な実装コードは以下の通りです。
import java.awt.*;import java.awt.event.*;import javax.swing.*;public class MouseDemo extends JFrameimplements MouseListener, MouseMotionListener { //flag=1 はマウスの移動を表し、flag=2 はマウスを表します。ドラッグ int x = 0; int y = 0; int startx, starty, endx, endy;//開始座標と終了座標 public MouseDemo() { コンテナ contentPane = getContentPane(); contentPane.addMouseListener(this); setSize(300, 300); public void windowClosing(WindowEvent); { システム.exit(0) } }); /*mousePressed()、mouseClosed() からマウスのドラッグの開始座標と終了座標を取得します*/ public void MousePressed(MouseEvent e) { startx = e.getX() = e.getY(); } MouseEvent e) { endx = e.getX(); endy = e.getY() } public void MouseEntered(MouseEvent e); /*mouseMoved(),mouseDragged() マウスの動きの各座標を取得し、repaint() メソッドを呼び出します*/ public void MouseMoved(MouseEvent e) ) { フラグ = 1; x = e.getX(); } パブリック void MouseDragged(MouseEvent e) { flag = 2; x = e.getX(); y = e.getY(); } public void update(this.getBackground()); g.fillRect(0, 0, getWidth(), getHeight()); //現在のウィンドウの内容をクリアします。 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); } } public static void main(String[] args) { new MouseDemo();
線描画プロセス中、プログラムはドラッグ時にマウス座標を表示します。読者は、自分のニーズに応じてプログラムを修正および改良して、より実用的なものにすることもできます。