如何在Java中为JButton添加空边框?

How to add empty border to a JButton in Java?

要将空边框添加到组件,请使用BorderFactory类的createEmptyBorder()方法-

1
Border emptyBorder = BorderFactory.createEmptyBorder(10, 10, 0, 0);

要将上方边框设置为组件,请使用setBorder()方法-

1
2
JButton button = new JButton("Empty Border");
button.setBorder(emptyBorder);

以下是向JButton广告空白边框的示例-

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package my;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.border.Border;
import javax.swing.border.SoftBevelBorder;
public class SwingDemo {
 public static void main(String args[]) {
   JFrame frame = new JFrame("Demo");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   Border raisedBorder = new SoftBevelBorder(SoftBevelBorder.RAISED, Color.GREEN, Color.GREEN.darker(),
   Color.MAGENTA, Color.magenta.brighter());
   Border raisedBorder2 = new SoftBevelBorder(SoftBevelBorder.RAISED);
   Border loweredBorder = new SoftBevelBorder(SoftBevelBorder.LOWERED, Color.ORANGE, Color.YELLOW.darker(),
   Color.BLUE, Color.yellow.brighter());
   Border emptyBorder = BorderFactory.createEmptyBorder(10, 10, 0, 0);
   JButton raisedButton = new JButton("Raised Border");
   raisedButton.setBorder(raisedBorder);
   JButton loweredButton = new JButton("Lowered Border");
   loweredButton.setBorder(loweredBorder);
   JLabel raisedLabel = new JLabel("Raised Border");
   raisedLabel.setBorder(raisedBorder2);
   JButton button = new JButton("Empty Border");
   button.setBorder(emptyBorder);
   Container contentPane = frame.getContentPane();
   contentPane.add(raisedButton,BorderLayout.WEST);
   contentPane.add(loweredButton,BorderLayout.EAST);
   contentPane.add(raisedLabel,BorderLayout.CENTER);
   contentPane.add(button,BorderLayout.NORTH);
   frame.setSize(600, 300);
   frame.setVisible(true);
 }
}

输出量