久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

java怎么實現鼠標拖動畫矩形

130次閱讀
沒有評論

共計 1292 個字符,預計需要花費 4 分鐘才能閱讀完成。

要實現鼠標拖動畫矩形,可以使用 Java 的 Swing 庫來完成。下面是一個簡單的示例代碼:

import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class DraggableRectangle extends JFrame {private int initialX, initialY;
    private int currentX, currentY;
    private Rectangle rectangle;

    public DraggableRectangle() {setTitle("Draggable Rectangle");
        setSize(400, 400);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 創建矩形并設置初始位置和大小 
        rectangle = new Rectangle(100, 100, 100, 100);

        // 添加鼠標事件監聽器 
        addMouseListener(new MouseAdapter() {@Override
            public void mousePressed(MouseEvent e) {// 記錄鼠標按下時的初始位置 
                initialX = e.getX();
                initialY = e.getY();}
        });

        addMouseMotionListener(new MouseAdapter() {@Override
            public void mouseDragged(MouseEvent e) {// 計算鼠標拖動后的位置 
                currentX = e.getX();
                currentY = e.getY();

                // 計算矩形的偏移量 
                int offsetX = currentX - initialX;
                int offsetY = currentY - initialY;

                // 更新矩形的位置 
                rectangle.setLocation(rectangle.x + offsetX, rectangle.y + offsetY);

                // 重繪窗口 
                repaint();

                // 更新初始位置 
                initialX = currentX;
                initialY = currentY;
            }
        });
    }

    @Override
    public void paint(Graphics g) {super.paint(g);

        // 繪制矩形 
        g.fillRect(rectangle.x, rectangle.y, rectangle.width, rectangle.height);
    }

    public static void main(String[] args) {SwingUtilities.invokeLater(() -> {DraggableRectangle draggableRectangle = new DraggableRectangle();
            draggableRectangle.setVisible(true);
        });
    }
}

運行以上代碼,將會顯示一個可拖動的矩形窗口。當鼠標按下并拖動時,矩形會跟隨鼠標的移動而移動。

丸趣 TV 網 – 提供最優質的資源集合!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-09發表,共計1292字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 桐梓县| 名山县| 布拖县| 泊头市| 三江| 青海省| 大同市| 镶黄旗| 乌审旗| 崇文区| 棋牌| 山丹县| 巨野县| 阿鲁科尔沁旗| 湖南省| 德惠市| 兴文县| 遂昌县| 疏勒县| 汤阴县| 开阳县| 辽源市| 枞阳县| 饶平县| 乃东县| 安平县| 嘉荫县| 浙江省| 通榆县| 镇江市| 白城市| 山东| 德格县| 鹤庆县| 石阡县| 长汀县| 宁城县| 泾川县| 吉林市| 乐山市| 琼海市|