Java Swing Jbutton:仅在悬停时显示边框和背景。

bluesky1年前 ⋅ 85 阅读

ChatGPT的回答仅作参考:

您可以使用MouseListener来实现这个功能。在鼠标进入按钮时,设置按钮的边框和背景颜色,当鼠标离开按钮时,恢复按钮的原始边框和背景颜色。

以下是一个示例代码:

```
import java.awt.Color;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class HoverButtonExample {

    public static void main(String[] args) {
        JFrame frame = new JFrame("Hover Button Example");
        JPanel panel = new JPanel();
        JButton button = new JButton("Hover Me");

        // 设置按钮的边框和背景颜色
        button.setBorder(BorderFactory.createLineBorder(Color.GRAY));
        button.setBackground(Color.WHITE);

        // 添加鼠标监听器
        button.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseEntered(MouseEvent e) {
                // 鼠标进入按钮时,设置边框和背景颜色
                button.setBorder(BorderFactory.createLineBorder(Color.BLUE));
                button.setBackground(Color.LIGHT_GRAY);
            }

            @Override
            public void mouseExited(MouseEvent e) {
                // 鼠标离开按钮时,恢复原始边框和背景颜色
                button.setBorder(BorderFactory.createLineBorder(Color.GRAY));
                button.setBackground(Color.WHITE);
            }
        });

        panel.add(button);
        frame.add(panel);
        frame.pack();
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

}
```

运行代码,当鼠标悬停在按钮上时,按钮的边框和背景颜色会改变。

全部评论: 0

    相关推荐