2017-08-08 96 views
-3

我有一个关于jlabel的问题。当我们将鼠标指针移到它上面时,我想改变jlabel的颜色。同时改变鼠标光标,如图指针。请帮帮我。当我们移动鼠标指针时改变jlabel的颜色

+0

请提供一个[mcve](https://stackoverflow.com/help/mcve),描述您已采取哪些措施来解决问题以及哪些措施无法正常工作。 –

+0

请先询问后再搜索,然后用您的问题显示您搜索的具体结果。否则,你只是要求人们反复询问和回答。 –

回答

1

下面是一些代码来实现这一目标:

JLabel label = new JLabel(); 
label.setCursor(CURSOR); 
label.addMouseListener(new MouseAdapter(){ 
    @Override 
    public void mouseEntered(MouseEvent e) { 
     label.setForeground(COLOR1); 
    } 
    @Override 
    public void mouseExited(MouseEvent e) { 
     label.setForeground(COLOR2); 
    } 
}); 

注意,这类光标将只不同的是标签内部时,所以你可能想要做frame.setCursor而不是有变化影响到整个窗口。

+1

继承自[MouseAdapter](http://docs.oracle.com/javase/8/docs/api/java/awt/event/MouseAdapter.html)而不是实现MouseListener可以让您无法实现所有这些未使用的方法。 –

+1

这是一个更好的方法来编辑。 –

+0

感谢您的帮助,它确实有效 –