import javax.swing.border.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class BorderDemo{
public static void main(String[] args){
JFrame f=new JFrame("BorderDemo");
Container content=f.getContentPane();
JPanel label=new JPanel();
//label.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));//凹陷效果
//label.setBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED));//突起效果
//凹陷效果,并设置突出与阴影的颜色
// label.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED,Color.red,Color.blue));
//凹陷效果,并设置内外部突出与阴影的颜色
//label.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED,Color.red,Color.blue,Color.yellow,Color.green));
/*EmptyBorder:建立一个空的边界,可指定边界的宽度,这在区隔组件之间的距离时可能用到。
*EtchedBorder:建立一个四周有凹痕的边界,也可以指定突边与阴影的颜色.
*/
//label.setBorder(BorderFactory.createEtchedBorder());
//设置四周有凹痕的边界,并指定内外部的突边与阴影的颜色
//label.setBorder(BorderFactory.createEtchedBorder(Color.red,Color.blue));
//LineBorder:建立一个线条边界,并可以指定线条的颜色与宽度。
//label.setBorder(BorderFactory.createLineBorder(Color.blue,5));
//MatteBorder:建立一个Matte边界,这个方法与createEmptyBorder()有点像,但可以指定边界颜色
//或利用Icon产生边界花纹.
//label.setBorder(BorderFactory.createMatteBorder(5,5,5,5,Color.green));
//label.setBorder(BorderFactory.createMatteBorder(25,25,25,25,new ImageIcon(".//icons//star.gif")));
/*CompoundBorder: 建立一个复合边界,并可以指定它的内外边界,例如我们可以指定它的外边界为LineBorder,
*它的内边界为MatteBorder。
*/
//label.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createLineBorder(Color.blue,5),
// BorderFactory.createMatteBorder(20,20,18,18,new ImageIcon(".//icons//star.gif"))));
//TitleBorder:建立一个标题边界,我们可以指定边界的标题名称、标题位置、字体与标题颜色。
//label.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.blue,5),"Line Border"
// ,TitledBorder.LEFT,TitledBorder.TOP));
label.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.lightGray,1),"Line Border"
,TitledBorder.LEFT,TitledBorder.ABOVE_TOP,new Font("SansSerif",Font.ITALIC,14),Color.red));
content.add(label);
f.setSize(200,150);
f.show();
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
}