JButton เป็นคลาสย่อยของ AbstractButton ใช้เพิ่มปุ่ม platform-independent ใน GUI สร้าง ActionListener เมื่อกดปุ่ม และ MouseListener, KeyListener เราสามารถทำ rollover effect เมื่อเมาส์เลื่อนผ่านปุ่มได้โดย override เมธอด mouseEntered() ของ MouseListener
ไวยากรณ์
void mouseEntered(MouseEvent e)
ตัวอย่าง
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class RollOverButtonTest extends JFrame {
private JButton button;
public RollOverButtonTest() {
setTitle("RollOverButton Test");
button = new JButton("Rollover Button");
button.addMouseListener(new MouseAdapter() {
Color color = button.getForeground();
public void mouseEntered(MouseEvent me) {
color = button.getForeground(); button.setForeground(Color.green); // change the color to green when mouse over a button
}
public void mouseExited(MouseEvent me) {
button.setForeground(color);
}
});
add(button, BorderLayout.NORTH);
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new RollOverButtonTest();
}
}
ผลลัพธ์
