Border 实例的引用。下面讨论具体的应用方法:
2. 下面列出程序的完整实现代码:
Java示例:
package Testimport java.awt.*import javax.swing.*import javax.swing.border.*public class BorderDemo {public static void main(String[] args) {JFrame frame = new JFrame("Swing边框演示")frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)JPanel panel = new JPanel() panel.setLayout(new GridLayout(0,2,5,10)) panel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5))
JButton p1 = new JButton() p1.setBorder(BorderFactory.createLineBorder(Color.red,3)) p1.add(new JLabel("线边框")) panel.add(p1)JPanel p2 = new
JPanel()
p2.setBorder(BorderFactory.createEtchedBorder())
p2.add(new JLabel("蚀刻边框"))
panel.add(p2)
JPanel p3 = new JPanel()
p3.setBorder(BorderFactory.createRaisedBevelBorder())
p3.add(new JLabel("斜面边框(凸)"))
panel.add(p3)
JPanel p4 = new JPanel()
p4.setBorder(BorderFactory.createLoweredBevelBorder())
p4.add(new JLabel("斜面边框(凹)"))
panel.add(p4)
JPanel p5 = new JPanel()
p5.setBorder(BorderFactory.createTitledBorder("标题"))
p5.add(new JLabel("标题边框"))
panel.add(p5)
JPanel p6 = new JPanel()
TitledBorder tb = BorderFactory.createTitledBorder("标题")
tb.setTitleJustification(TitledBorder.RIGHT)
p6.setBorder(tb)
p6.add(new JLabel("标签边框(右)"))
panel.add(p6)
JPanel p7 = new JPanel()
p7.setBorder(BorderFactory.createMatteBorder(1,5,1,1,Color.yellow))
p7.add(new JLabel("花色边框"))
panel.add(p7)
JPanel p8 = new JPanel()
Border b1 = BorderFactory.createLineBorder(Color.blue, 2)
Border b2 = BorderFactory.createEtchedBorder()
p8.setBorder(BorderFactory.createCompoundBorder(b1, b2))
p8.add(new JLabel("组合边框"))
panel.add(p8)
JScrollPane scrollPane = new JScrollPane(panel)
scrollPane.setPreferredSize(new Dimension(300,300))
frame.getContentPane().add(panel)
frame.pack()
frame.setVisible(true)
}
}
到此,Java客户端Swing程序中控件的边框定义便介绍完了,本文中,我们演示了线边框、蚀刻边框、斜面边框、标题边框、组合边框的实际用法,希望对你有所帮助。
BorderFactory产生Border. 一般来说相同的border不会被重复创建,这是个典型的工厂模式. 就是有些复杂的对象, 多次创建占内存. 就用一个工厂根据不同参数来生产它. 相同参数的对象不会被重复创建.,
BorderFactorypublic static TitledBorder createTitledBorder(Border border,
String title,
int titleJustification,
int titlePosition,
Font titleFont,
Color titleColor)向现有边框添加一个标题,使其具有指定的位置、字体和颜色。
参数:
border - 向其添加标题的 Border 对象
title - 包含标题文本的 String
titleJustification - 指定标题调整的整数,该值为以下值之一:
TitledBorder.LEFT
TitledBorder.CENTER
TitledBorder.RIGHT
TitledBorder.LEADING
TitledBorder.TRAILING
TitledBorder.DEFAULT_JUSTIFICATION (leading)
titlePosition - 指示文本相对于边框的纵向位置的整数,它为以下值之一:
TitledBorder.ABOVE_TOP
TitledBorder.TOP(位于顶线上)
TitledBorder.BELOW_TOP
TitledBorder.ABOVE_BOTTOM
TitledBorder.BOTTOM(位于底线上)
TitledBorder.BELOW_BOTTOM
TitledBorder.DEFAULT_POSITION(顶部)
titleFont - 指定标题字体的 Font 对象
titleColor - 指定标题颜色的 Color 对象
返回:
TitledBorder 对象
这个方法直接创建带字体的。