package com.one.basic;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
public class BorderTest {
JFrame f = new JFrame("测试边框");
public JPanel getJPanelWithBorder(Border b, String s) {
JPanel jPanel = new JPanel();
jPanel.add(new JLabel(s));
//设置边框
jPanel.setBorder(b);
return jPanel;
}
public void init() {
// 组装试图
//JFrame的布局修改为GridLayout
f.setLayout(new GridLayout(2, 4));
// 往网格中添加不同的JPanel组件,并且设置边框和内容
//创建BevelBorder
Border bevelBorder = BorderFactory.createBevelBorder(BevelBorder.RAISED, Color.red, Color.YELLOW, Color.GREEN, Color.BLUE);
f.add(getJPanelWithBorder(bevelBorder, "BevelBorder"));
// 创建LineBorder
Border lineBorder = BorderFactory.createLineBorder(Color.PINK, 20);
f.add(getJPanelWithBorder(lineBorder, "LineBorder"));
// 创建EmptyBorder
Border emptyBorder = BorderFactory.createEmptyBorder(1, 5, 10, 15);
f.add(getJPanelWithBorder(emptyBorder, "EmptyBorder"));
// 创建MatteBorder
MatteBorder matteBorder = BorderFactory.createMatteBorder(5, 10, 20, 30, Color.CYAN);
f.add(getJPanelWithBorder(matteBorder, "MatteBorder"));
// 创建TitleBorder
TitledBorder titledBorder = BorderFactory.createTitledBorder(lineBorder, "LineBorder",TitledBorder.LEFT,TitledBorder.BOTTOM,new Font("StSong",Font.BOLD,20),Color.BLUE);
f.add(getJPanelWithBorder(titledBorder, "TitleBorder"));
// 创建EtchedBorder
Border etchedBorder = BorderFactory.createEtchedBorder(EtchedBorder.LOWERED, Color.MAGENTA, Color.ORANGE);
f.add(getJPanelWithBorder(etchedBorder, "EtchedBorder"));
// 创建CompoundBorder
CompoundBorder compoundBorder = BorderFactory.createCompoundBorder(matteBorder,etchedBorder);
f.add(getJPanelWithBorder(compoundBorder,"CompoundBorder"));
// 设置窗口最佳大小。设置可见,处理关闭操作
f.pack();
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new BorderTest().init();
}
}
swing边框
最新推荐文章于 2024-05-03 17:27:49 发布