java边框怎么做2007-05-29 yycnet.yeah.net yyc译JComponent同样包括一个称为setBorder()的方法,该方法允许我们安放一些各种各样有趣的边框到一些可见的组件上。下面的程序例子利用一个创建JPanel并安放边框到每个例子中的被称为showBorder()的方法,示范了一些有用的不同的边框。同样,它也使用RTTI来找我们使用的边框名(剔除所有的路径信息),然后将边框名放到面板中间的JLable里:
//: Borders.java// Different Swing borderspackage c13.swing;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;public class Borders extends JPanel {static JPanel showBorder(Border b) {JPanel jp = new JPanel();jp.setLayout(new BorderLayout());String nm = b.getClass().toString();nm = nm.substring(nm.lastIndexOf(".") + 1);jp.add(new JLabel(nm, JLabel.CENTER), BorderLayout.CENTER);jp.setBorder(b);return jp;}public Borders() {setLayout(new GridLayout(2,4));add(showBorder(new TitledBorder("Title")));add(showBorder(new EtchedBorder()));add(showBorder(new LineBorder(Color.blue)));add(showBorder(new MatteBorder(5,5,30,30,Color.green)));add(showBorder(new BevelBorder(BevelBorder.RAISED)));add(showBorder(new SoftBevelBorder(BevelBorder.LOWERED)));add(showBorder(new CompoundBorder(new EtchedBorder(),new LineBorder(Color.red))));}public static void main(String args[]) {Show.inFrame(new Borders(), 500, 300);}} ///:~
这一节中大多数程序例子都使用TitledBorder,但我们可以注意到其余的边框也同样易于使用。能创建我们自己的边框并安放它们到按钮、标签等等内——任何来自JComponent的东西。