- packageAssis;
- importjava.awt.*;
- importjava.awt.event.*;
- importjavax.swing.border.*;
- importjavax.swing.*;
- publicclassBorderDemoextendsJFrame{
- privatestaticfinallongserialVersionUID=1L;
- publicBorderDemo(){
- //设置框架窗口的标题
- super("使用边框的例子");
- //定义5个简单类型的边框
- Borderblackline,etched,raisedbevel,loweredbevel,empty;
- //创建黑色的线状边框
- blackline=BorderFactory.createLineBorder(Color.black);
- //创建蚀刻边框
- etched=BorderFactory.createEtchedBorder();
- //创建凸出边框
- raisedbevel=BorderFactory.createRaisedBevelBorder();
- //创建凹陷边框
- loweredbevel=BorderFactory.createLoweredBevelBorder();
- //创建空的边框
- empty=BorderFactory.createEmptyBorder();
- //Firstpane:simpleborders
- JPanelsimpleBorders=newJPanel();
- simpleBorders.setLayout(newBoxLayout(simpleBorders,BoxLayout.Y_AXIS));
- addCompForBorder(blackline,"线状边框",simpleBorders);
- addCompForBorder(etched,"蚀刻边框",simpleBorders);
- addCompForBorder(raisedbevel,"凸出边框",simpleBorders);
- addCompForBorder(loweredbevel,"凹陷边框",simpleBorders);
- addCompForBorder(empty,"空的边框",simpleBorders);
- //Secondpane:titledborders
- JPaneltitledBorders=newJPanel();
- titledBorders.setLayout(newBoxLayout(titledBorders,BoxLayout.Y_AXIS));
- TitledBordertitled;
- titled=BorderFactory.createTitledBorder("title");
- addCompForBorder(titled,"defaulttitledborder"
- +"(defaultjust.,defaultpos.)",titledBorders);
- titled=BorderFactory.createTitledBorder(blackline,"title");
- addCompForTitledBorder(titled,"titledlineborder"
- +"(centered,defaultpos.)",TitledBorder.CENTER,
- TitledBorder.DEFAULT_POSITION,titledBorders);
- titled=BorderFactory.createTitledBorder(etched,"title");
- addCompForTitledBorder(titled,"titledetchedborder"
- +"(rightjust.,defaultpos.)",TitledBorder.RIGHT,
- TitledBorder.DEFAULT_POSITION,titledBorders);
- titled=BorderFactory.createTitledBorder(loweredbevel,"title");
- addCompForTitledBorder(titled,"titledloweredbevelborder"
- +"(defaultjust.,abovetop)",
- TitledBorder.DEFAULT_JUSTIFICATION,TitledBorder.ABOVE_TOP,
- titledBorders);
- titled=BorderFactory.createTitledBorder(empty,"title");
- addCompForTitledBorder(titled,"titledemptyborder"
- +"(defaultjust.,bottom)",
- TitledBorder.DEFAULT_JUSTIFICATION,TitledBorder.BOTTOM,
- titledBorders);
- //创建TabbledPane组件
- JTabbedPanetabbedPane=newJTabbedPane();
- tabbedPane.addTab("简单的边框",null,simpleBorders,null);
- tabbedPane.addTab("带有标题的边框",null,titledBorders,null);
- tabbedPane.setSelectedIndex(0);
- getContentPane().add(tabbedPane,BorderLayout.CENTER);
- }
- //添加带有标题的边框
- voidaddCompForTitledBorder(TitledBorderborder,Stringdescription,
- intjustification,intposition,Containercontainer){
- border.setTitleJustification(justification);
- border.setTitlePosition(position);
- addCompForBorder(border,description,container);
- }
- //添加简单的边框
- voidaddCompForBorder(Borderborder,Stringdescription,Containercontainer){
- JPanelcomp=newJPanel(false);
- JLabellabel=newJLabel(description,JLabel.CENTER);
- comp.setLayout(newGridLayout(1,1));
- comp.add(label);
- comp.setBorder(border);
- container.add(Box.createRigidArea(newDimension(0,10)));//设置间隔
- container.add(comp);
- }
- //程序的入口方法
- publicstaticvoidmain(String[]args){
- JFrameframe=newBorderDemo();
- //添加框架窗口的事件监听(监听关闭框架窗口事件)
- frame.addWindowListener(newWindowAdapter(){
- publicvoidwindowClosing(WindowEvente){
- //正常推出Java虚拟机
- System.exit(0);
- }
- });
- //显示框架窗口
- frame.pack();
- frame.setVisible(true);
- }
- }
swing 显示边框
最新推荐文章于 2021-07-24 21:26:38 发布