「java鼠标滚动」鼠标怎么滚动页面
本篇文章给大家谈谈java鼠标滚动,以及鼠标怎么滚动页面对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java 当鼠标移出窗口时鼠标滚轮依然可以控制JScollPane滚动条
- 2、java怎么实现通过鼠标滚轮对图片进行等比例缩放功能?
- 3、java 鼠标滚轮没反应
- 4、在java Applet里如何实现鼠标滚轮放大缩小图片?
- 5、java中怎么设置鼠标滑轮来滚动java滚动条滚动的速度
java 当鼠标移出窗口时鼠标滚轮依然可以控制JScollPane滚动条
回答是肯定可以的:
鼠标在窗口外面,滚动鼠标滚轮,其实还是可以控制JScollPane的滚动
思路 :顶层的JFrame窗口能够获得焦点,也就是窗口在前端显示状态。
那么当滚轮滚动的时候,就会触发鼠标滚动事件。
在事件响应里面。重新设置JSCollPane的(JSCollBar)滚动条的值就可以实现了。
代码参考:
附件下载
建议: 一般而言没有必要在窗口外面控制JSCollPane滚动。。。
效果如图
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(); //刷新屏幕
}
java 鼠标滚轮没反应
建议你参看 中MouseAdapter的api文档,里面没有mouseWheelMoved这个抽象方法,所以你重写了没用。
监听mouseWeelMoved这个动作,需要用MouseWheelListener, 请参看。
或者你新建一个类,
public class MyListener extends MouseAdapter implement MouseWheelListener,然后把你以上三个方法都实现了。再添加一个MyListener就可以了。
在java Applet里如何实现鼠标滚轮放大缩小图片?
创建鼠标滚轮监听事件MouseWheelListener,MouseWheelEvent e,
int num=e.getWheelRotation(); 这个用来得到滚轮转动的方向与单位数,正数表示向下旋转,负数表示向上旋转,绝对值表示转动的单位。
然后你再改变图片的大小和位置,然后 refresh();
建议用JLabel来显示图片,然后在鼠标的滚轮事件中改变JLabel的大小和位置就OK了,具体的自己去实现。
看来得给你个例子啊!关键点1:按比例缩放图片;2:this.repaint();之前写错了不好意思啊
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(); //刷新屏幕
}
java中怎么设置鼠标滑轮来滚动java滚动条滚动的速度
可以采用以下代码实现来滚动java滚动条滚动的速度
[java] view plaincopy
span style="font-family: Arial, Helvetica, sans-serif;"//虽然比较短,但还是分享下吧。。。。就当是个随笔吧~/span
[java] view plaincopy
//设置滚动面板的滚动速度
[java] view plaincopy
JScrollPane.getVerticalScrollBar().setUnitIncrement(10);
[java] view plaincopy
[java] view plaincopy
//鼠标滑轮滚动事件
this.btn.addMouseWheelListener(new MouseWheelListener() {
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
String str = (e.getWheelRotation() 0)?"上" : "下";
System.out.println(str);
}
});
java鼠标滚动的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于鼠标怎么滚动页面、java鼠标滚动的信息别忘了在本站进行查找喔。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。