boderlayout布局,borderlayout布局

1 , borderlayout布局borderLayout布局,是分为东南西北中五个位置我记得是west和east
2,JAVA布局 管理器BorderLayout布局先用JPanel 把相似或相同作用的一组组件放进JPanel里 , 然后再将擦JPanel放进JFrame里JPanel中也可以add其他的JPanel
3,BorderLayout布局中能改变组件大小么该怎么处理public void setBounds(int x,int y,int width,int height)移动组件并调整其大小 。由 x 和 y 指定左上角的新位置,由 width 和 height 指定新的大小 。------解决方案--------------------------------------------------------Layout是可以叠加的比如你设置了BorderLayout然后可以把一个JPanel放到BorderLayout.CENTER然后设置这个JPanel的Layout为其他的再在这个JPanel上添加component,这时候的JPanel会完全占据BorderLayout的CENTER位置但是你添加的component会使用JPanel使用的Layoutjava的Layout非常灵活好用,搭配起来使用很方便的通常不建议使用绝对位置来布局 , 那样在尺寸变化时会变得很糟糕【boderlayout布局,borderlayout布局】
4,java中borderlayout布局显示就差了一句话!呵呵……修改后如下:import java.awt.*;import java.awt.event.*;public class BorderLayoutDemo extends Frame{ public void BorderLayoutDemo(){ this.add(new Button("1"),BorderLayout.EAST); this.add(new Button("2"),BorderLayout.CENTER); this.add(new Button("3"),BorderLayout.NORTH); this.add(new Button("4"),BorderLayout.WEST); add(new Label("this is a borderlayout"),BorderLayout.SOUTH); } public static void main(String args[]){ BorderLayoutDemo blyd=new BorderLayoutDemo(); blyd.setTitle("this is a borderlayout"); blyd.setVisible(true); ///就多加这么一句就OK啦~~!呵呵……你忘记执行那个添加控件的方法了! blyd.BorderLayoutDemo(); blyd.pack(); blyd.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); } public Dimension getPerferredSzie(){ return new Dimension(400,200); }}还不明白的话问我!^_^5,Java BorderLayoutBorderLayout:import java.awt.BorderLayout;import java.awt.event.*;import javax.swing.*;public class StarBorderLayout extends JFrame int i = 0; JButton button1; String[] buttonName =JButton[] buttonArray = new JButton[5]; JPanel panel1 , panel2 ;public StarBorderLayout()super("BorderLayout");setSize(300,200);setVisible(true);panel1 = new JPanel();panel2 = new JPanel();button1 = new JButton("显示");panel1.add(button1);panel2.setLayout(new BorderLayout());for(String string : buttonName)buttonArray[i] = new JButton(string);panel2.add(buttonName[i],buttonArray[i]);i++;}for(JButton button : buttonArray)button_click(button);}button_click(button1);add("North",panel1);add("Center",panel2);} private void button_click(final JButton b)b.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)if (e.getSource() == button1)button1.setVisible(true);for(JButton button : buttonArray)button.setVisible(true);}elseb.setVisible(false);}}); }public static void main(String args[])new StarBorderLayout(); }}FlowLayout:import java.awt.FlowLayout;import javax.swing.*;public class StarFlowLayout extends JFrame JButton[] buttonArray = new JButton[8]; public StarFlowLayout()super("FlowLayout");setLayout(new FlowLayout(FlowLayout.LEFT,15,15)); // 第一个参数表示向左靠齐,第二个是列间距,第三个是行间距setSize(300,400);setVisible(true);for(int i = 0; i <=7 ; i++)buttonArray[i] = new JButton("button"+i);add(buttonArray[i]);} } public static void main(String args[])new StarFlowLayout(); }}GridLayout:import java.awt.*;import javax.swing.*;public class StarGridLayout extends JFrameint i = 0; String[] string =JTextField textfield = new JTextField(); JButton[] buttonArray = new JButton[20]; JPanel panel1 , panel2 ; public StarGridLayout()super("GridLayout");setSize(300,400);setVisible(true);panel1 = new JPanel(new BorderLayout());panel1.add(textfield);panel2 = new JPanel(new GridLayout(4,5));for(String str : string)buttonArray[i] = new JButton(str);panel2.add(buttonArray[i]);i++;}add("North",panel1);add("Center",panel2); } public static void main(String[] args)new StarGridLayout(); }}这是个例子 import java.awt.*;import java.awt.event.*;import javax.swing.*;public class BorderLayoutDemo extends JFrame implements ActionListenerprivate JButton buttons[]; private final String names[] =private BorderLayout layout; private Container container; public BorderLayoutDemo()super("BoderLayout布局");layout = new BorderLayout(5, 5);container = getContentPane();container.setLayout(layout);buttons = new JButton[names.length];for (int count = 0; count < names.length; count++)buttons[count] = new JButton(names[count]);buttons[count].addActionListener(this);}container.add(buttons[0], BorderLayout.NORTH);container.add(buttons[1], BorderLayout.SOUTH);container.add(buttons[2], BorderLayout.EAST);container.add(buttons[3], BorderLayout.WEST);container.add(buttons[4], BorderLayout.CENTER);setSize(300, 200);setVisible(true); } public void action...这是个例子 import java.awt.*;import java.awt.event.*;import javax.swing.*;public class BorderLayoutDemo extends JFrame implements ActionListenerprivate JButton buttons[]; private final String names[] =private BorderLayout layout; private Container container; public BorderLayoutDemo()super("BoderLayout布局");layout = new BorderLayout(5, 5);container = getContentPane();container.setLayout(layout);buttons = new JButton[names.length];for (int count = 0; count < names.length; count++)buttons[count] = new JButton(names[count]);buttons[count].addActionListener(this);}container.add(buttons[0], BorderLayout.NORTH);container.add(buttons[1], BorderLayout.SOUTH);container.add(buttons[2], BorderLayout.EAST);container.add(buttons[3], BorderLayout.WEST);container.add(buttons[4], BorderLayout.CENTER);setSize(300, 200);setVisible(true); } public void actionPerformed(ActionEvent event)for (int count = 0; count < buttons.length; count++)if (event.getSource() == buttons[count])buttons[count].setVisible(false);elsebuttons[count].setVisible(true);layout.layoutContainer(container); } public static void main(String[] args)BorderLayoutDemo application = new BorderLayoutDemo();application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }}1顺序布局管理器import java.awt.*;public class TestFlowLayout public static void main(String args[])Frame f=new Frame("这是一个布局管理器");f.setLayout(new FlowLayout());f.add(new Button("第一个按钮"));f.add(new Button("第二个按钮"));f.add(new Button("第三个按钮"));f.add(new Button("第四个按钮"));f.setSize(300,300);f.setVisible(true); }} 2.边界布局管理器import java.awt.*;public class TestBorderLayoutpublic static void main(String args[])Frame f=new Frame();f.setLayout(new BorderLayout());f.add("North",new Button("第一个按钮"));f.add("West",new Button("第二个按钮"));f.setSize(300,300);f.setVisible(true); }} 3.网格布局管理器 import java.awt.*;public class GridLayoutExample public static void main(String args[])Frame f=new Frame("网格布局演示");String str[]=f.setLayout(new GridLayout(3,3));Button btn[]=new Button[str.length];for(int i=0;ipublic class TestFlowLayout{ public static void main(String args[]) { Frame f=new Frame("这是一个布局管理器"); f.setLayout(new FlowLayout()); f.add(new Button("第一个按钮")); f.add(new Button("第二个按钮")); f.add(new Button("第三个按钮")); f.add(new Button("第四个按钮")); f.setSize(300,300); f.setVisible(true); } } 2.边界布局管理器import java.awt.*; public class TestBorderLayout { public static void main(String args[]) { Frame f=new Frame(); f.setLayout(new BorderLayout()); f.add("North",new Button("第一个按钮")); f.add("West",new Button("第二个按钮")); f.setSize(300,300); f.setVisible(true); } } 3.网格布局管理器 import java.awt.*; public class GridLayoutExample{ public static void main(String args[]) { Frame f=new Frame("网格布局演示"); String str[]={"1","2","3","4","5","6","7","8","9"}; f.setLayout(new GridLayout(3,3)); Button btn[]=new Button[str.length]; for(int i=0;i btn[i]=new Button(str[i]); f.add(btn[i]); } f.setSize(300,200); f.setVisible(true); } }

    推荐阅读