admin 管理员组文章数量: 1086019
2024年3月5日发(作者:135编辑器微信公众平台)
创建鼠标滚轮监听事件MouseWheelListener,MouseWheelEvent e,
int num=elRotation(); 这个用来得到滚轮转动的方向与单位数,正数表示向下旋转,负数表示向上旋转,绝对值表示转动的单位。
然后你再改变图片的大小和位置,然后 refresh();
建议用JLabel来显示图片,然后在鼠标的滚轮事件中改变JLabel的大小和位置就OK了,具体的自己去实现。
看来得给你个例子啊!关键点1:按比例缩放图片;2:t();
public class Anniu extends JFrame implements MouseWheelListener {
private static final long serialVersionUID = 1L;
JLabel jl = null;
ImageIcon image = new ImageIcon("F://");
public Anniu() {
}
public void init() {
setLayout(null);
jl = new JLabel(image);
setSize(800, 600);
nds(300, 200, 200, 200);
add(jl);
setDefaultCloseOperation(_ON_CLOSE);
seWheelListener(this);
setVisible(true);
}
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
// TODO Auto-generated method stub
int num = elRotation();
int x = (th() - th()) / 2;
int y = (ght() - ght()) / 2;
int width=th()+ 2 * num;
int height=ght()+ 2 * num;
n(new
ImageIcon( ge().getScaledInstance(width, height,
_SMOOTH))); //重点1:按所给的大小来设置图片,不管图片有多大,总是全图显示,可能导致失真!你可以加一个大小限制,超过图片大小了则不再放大。
nds(x + num, y + num, width, height);
t(); //刷新屏幕
}
版权声明:本文标题:鼠标滚动实现放大缩小 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1709645964a542566.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论