Java实现鼠标拖拽放置图片的案例
时间: 2023-05-13 12:05:09 浏览: 71
可以使用Java Swing中的JLabel和MouseListener实现鼠标拖拽放置图片的功能。以下是一个简单的示例代码:
```
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class DragAndDropImage extends JFrame {
private JLabel imageLabel;
public DragAndDropImage() {
super("Drag and Drop Image");
// 创建一个JLabel并设置图片
ImageIcon imageIcon = new ImageIcon("image.jpg");
imageLabel = new JLabel(imageIcon);
imageLabel.setBounds(0, 0, imageIcon.getIconWidth(), imageIcon.getIconHeight());
// 添加MouseListener
imageLabel.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
// 记录鼠标按下时的坐标
imageLabel.setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
imageLabel.setLocation(e.getX(), e.getY());
}
public void mouseReleased(MouseEvent e) {
// 将图片放置到鼠标释放时的坐标
imageLabel.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
imageLabel.setLocation(e.getX(), e.getY());
}
});
// 添加到JFrame中
getContentPane().add(imageLabel);
setLayout(null);
setSize(imageIcon.getIconWidth(), imageIcon.getIconHeight());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new DragAndDropImage();
}
}
```
这个程序会在窗口中显示一张图片,你可以用鼠标拖拽图片并放置到任意位置。