当前位置:首页 » 编程语言 » 滚轮JAVA

滚轮JAVA

发布时间: 2025-04-09 01:27:32

java怎么实现通过鼠标滚轮对图片进行等比例缩放功能

给你个实例吧
public class Anniu extends JFrame implements MouseWheelListener {

private static final long serialVersionUID = 1L;

JLabel jl = null;
ImageIcon image = new ImageIcon("F://12.jpg");
public Anniu() {

}

public void init() {
setLayout(null);

jl = new JLabel(image);
setSize(800, 600);
jl.setBounds(300, 200, 200, 200);
add(jl);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.addMouseWheelListener(this);
setVisible(true);
}

@Override
public void mouseWheelMoved(MouseWheelEvent e) {
// TODO Auto-generated method stub
int num = e.getWheelRotation();
int x = (this.getWidth() - jl.getWidth()) / 2;
int y = (this.getHeight() - jl.getHeight()) / 2;
int width=jl.getWidth()+ 2 * num;
int height=jl.getHeight()+ 2 * num;
jl.setIcon(new ImageIcon( image.getImage().getScaledInstance(width, height, Image.SCALE_SMOOTH))); //重点1:按所给的大小来设置图片,不管图片有多大,总是全图显示,可能导致失真!你可以加一个大小限制,超过图片大小了则不再放大。
jl.setBounds(x + num, y + num, width, height);
this.repaint(); //刷新屏幕
}

热点内容
阿里云服务器搭建网盘 发布:2025-09-23 17:39:39 浏览:993
microsoft数据库 发布:2025-09-23 17:20:40 浏览:229
三星证书存储的密码 发布:2025-09-23 17:16:26 浏览:727
我的世界抽奖32k服务器推荐 发布:2025-09-23 17:03:46 浏览:809
b站在笔记本上怎么缓存啊 发布:2025-09-23 16:41:53 浏览:386
光遇为什么ios的心比安卓贵 发布:2025-09-23 16:34:26 浏览:727
南京编程少儿 发布:2025-09-23 16:28:25 浏览:693
安卓手机的游戏文件夹在哪里设置 发布:2025-09-23 16:04:21 浏览:299
java免费离线编译器 发布:2025-09-23 14:54:56 浏览:273
征途脚本赚钱 发布:2025-09-23 14:41:41 浏览:296