我希望根据鼠标事件(鼠标进入,退出,按下等)获得自定义颜色.所以要做到这一点,我写了下面的代码.它对一切都很好,除了鼠标按下事件的情况,什么都不做.它只有当我覆盖在色彩的作品UIManager是这样UIManager.put("Button.select", Color.red);.问题UIManager是,它会改变我的所有按钮.
任何人都可以告诉我,我可能做错了什么,或者最好的方法是什么,我想要做什么?
我的代码:
final JButton btnSave = new JButton("Save");
btnSave.setForeground(new Color(0, 135, 200).brighter());
btnSave.setHorizontalTextPosition(SwingConstants.CENTER);
btnSave.setBorder(null);
btnSave.setBackground(new Color(3, 59, 90));
btnSave.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {
btnSave.setBackground(new Color(3, 59, 90));
}
@Override
public void mousePressed(MouseEvent e) {
// Not working :(
btnSave.setBackground(Color.pink);
}
@Override
public void mouseExited(MouseEvent e) {
btnSave.setBackground(new Color(3, 59, 90));
}
@Override
public void mouseEntered(MouseEvent e) {
btnSave.setBackground(new Color(3, 59, 90).brighter());
}
@Override
public void mouseClicked(MouseEvent e) { …Run Code Online (Sandbox Code Playgroud)