Java 是否可以使用图形在图像上产生悬停效果?

Java 是否可以使用图形在图像上产生悬停效果?,java,swing,graphics,Java,Swing,Graphics,我试图在Swing中使用图形在多个图像上实现悬停效果,我知道这可以通过使用CSS实现,但在Java中实现这一效果时会感到困惑,有人能帮我吗?使用MouseStener和MouseSeeted事件。是的,很有可能做到这一点 假设您有一个JPanel,其中有一个图像,您希望在用户每次悬停在该图像上时对其进行更改。代码如下所示: JPanel panel = new JPanel(); // create a JPanel this.setupGI(panel); // prepare your ba

我试图在Swing中使用图形在多个图像上实现悬停效果,我知道这可以通过使用CSS实现,但在Java中实现这一效果时会感到困惑,有人能帮我吗?

使用MouseStener和MouseSeeted事件。

是的,很有可能做到这一点

假设您有一个
JPanel
,其中有一个图像,您希望在用户每次悬停在该图像上时对其进行更改。代码如下所示:

JPanel panel = new JPanel(); // create a JPanel
this.setupGI(panel); // prepare your background
panel.addMouseListener(new MouseHandler());  // add a listener
this.getContentPane.add(panel); // add it to JApplet / JFrame
这是为了添加监听器,
MouseHandler
将是您的自定义处理程序类

class MouseHandler extends java.awt.event.MouseAdapter{
  @Override public void mouseEntered(MouseEvent e){
    // your logic here
  }
  @Override public void mouseExited(MouseEvent e){
    //
  }
}  
现在,
MouseHandler
类将如何访问
JPanel
,这取决于您。通常,我将处理程序类设置为一个子类,这样它就可以访问封闭类的所有方法和字段。或者,您可以创建getter和setter方法。这取决于你


更多信息:

但实际上Swing并不是一个很好的选择,而是一个很好的噱头。如果你想要,最好看看JavaFX。谢谢你的详细介绍。