📄 borderdemo.java
字号:
//BorderDemo.javaimport java.awt.*;import java.awt.event.*;import javax.swing.border.*;import javax.swing.*;public class BorderDemo extends JFrame { public BorderDemo() { //设置框架窗口的标题 super("使用边框的例子"); //定义5个简单类型的边框 Border blackline, etched, raisedbevel, loweredbevel, empty; //创建黑色的线状边框 blackline = BorderFactory.createLineBorder(Color.black); //创建蚀刻边框 etched = BorderFactory.createEtchedBorder(); //创建凸出边框 raisedbevel = BorderFactory.createRaisedBevelBorder(); //创建凹陷边框 loweredbevel = BorderFactory.createLoweredBevelBorder(); //创建空的边框 empty = BorderFactory.createEmptyBorder(); //First pane: simple borders JPanel simpleBorders = new JPanel(); simpleBorders.setLayout(new BoxLayout(simpleBorders, BoxLayout.Y_AXIS)); addCompForBorder(blackline, "线状边框",simpleBorders); addCompForBorder(etched, "蚀刻边框",simpleBorders); addCompForBorder(raisedbevel, "凸出边框",simpleBorders); addCompForBorder(loweredbevel, "凹陷边框",simpleBorders); addCompForBorder(empty, "空的边框",simpleBorders); //Second pane: titled borders JPanel titledBorders = new JPanel(); titledBorders.setLayout(new BoxLayout(titledBorders,BoxLayout.Y_AXIS)); TitledBorder titled; titled = BorderFactory.createTitledBorder("title"); addCompForBorder(titled, "default titled border" + " (default just., default pos.)", titledBorders); titled = BorderFactory.createTitledBorder(blackline, "title"); addCompForTitledBorder(titled, "titled line border" + " (centered, default pos.)", TitledBorder.CENTER, TitledBorder.DEFAULT_POSITION, titledBorders); titled = BorderFactory.createTitledBorder(etched, "title"); addCompForTitledBorder(titled, "titled etched border" + " (right just., default pos.)", TitledBorder.RIGHT, TitledBorder.DEFAULT_POSITION, titledBorders); titled = BorderFactory.createTitledBorder(loweredbevel, "title"); addCompForTitledBorder(titled, "titled lowered bevel border" + " (default just., above top)", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.ABOVE_TOP, titledBorders); titled = BorderFactory.createTitledBorder(empty, "title"); addCompForTitledBorder(titled, "titled empty border" + " (default just., bottom)", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.BOTTOM, titledBorders); //创建TabbledPane组件 JTabbedPane tabbedPane = new JTabbedPane(); tabbedPane.addTab("简单的边框", null, simpleBorders, null); tabbedPane.addTab("带有标题的边框", null, titledBorders, null); tabbedPane.setSelectedIndex(0); getContentPane().add(tabbedPane, BorderLayout.CENTER); } //添加带有标题的边框 void addCompForTitledBorder(TitledBorder border, String description, int justification, int position, Container container) { border.setTitleJustification(justification); border.setTitlePosition(position); addCompForBorder(border, description, container); } //添加简单的边框 void addCompForBorder(Border border, String description, Container container) { JPanel comp = new JPanel(false); JLabel label = new JLabel(description, JLabel.CENTER); comp.setLayout(new GridLayout(1, 1)); comp.add(label); comp.setBorder(border); container.add(Box.createRigidArea(new Dimension(0, 10))); container.add(comp); } //程序的入口方法 public static void main(String[] args) { JFrame frame = new BorderDemo(); //添加框架窗口的事件监听(监听关闭框架窗口事件) frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { //正常推出Java虚拟机 System.exit(0); } }); //显示框架窗口 frame.pack(); frame.setVisible(true); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -