JButton เป็นคลาสย่อยของ AbstractButton ใช้สร้างปุ่มอิสระจากแพลตฟอร์ม สร้าง Event: ActionListener (คลิก), MouseListener (เมาส์), KeyListener (คีย์บอร์ด) กำหนดขอบได้ด้วย setBorder() ของ JComponent
ไวยากรณ์
public void setBorder(Border border)
ตัวอย่าง: ขอบหลากหลายรูปแบบ
import javax.swing.*;
import java.awt.*;
public class JButtonBordersTest extends JFrame {
private JButton[] button;
private JPanel panel;
public JButtonBordersTest() {
setTitle("JButton Borders");
panel = new JPanel();
panel.setLayout(new GridLayout(7, 1));
button = new JButton[7];
for (int count = 0; count < button.length; count++) {
button[count] = new JButton("Button " + (count + 1));
panel.add(button[count]);
}
// กำหนดขอบแต่ละแบบ
button[0].setBorder(BorderFactory.createLineBorder(Color.BLUE));
button[1].setBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED));
button[2].setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED, Color.RED, Color.BLUE));
button[3].setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED, Color.GREEN, Color.ORANGE, Color.RED, Color.BLUE));
button[4].setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
button[5].setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
button[6].setBorder(BorderFactory.createTitledBorder("Titled Border"));
add(panel, BorderLayout.CENTER);
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new JButtonBordersTest();
}
}
ผลลัพธ์

ชนิดขอบ (BorderFactory): LineBorder, BevelBorder, EtchedBorder, EmptyBorder, TitledBorder, MatteBorder, CompoundBorder