P122 佈局 代碼補完
LayoutExample.java
- import javax.swing.*;
- import java.awt.*;
- import javax.swing.border.*;
- class MyWin extends JFrame
- {
- JTabbedPane tabbedPane;
- JPanel flowLayoutPanel,
- gridLayoutPanel,
- borderLayoutPanel,
- nullLayoutPanel;
- Box boxLayoutPanel;
- JSplitPane splitPaneOne,splitPaneTwo;
- JLayeredPane layeredPane;
- public MyWin()
- {
- JButton b[]=new JButton[35];
- for(int i=0;i<b.length;i++)
- {
- b[i]=new JButton("***");
- }
- JTextArea text=new JTextArea("大家好");
- setBounds(100,100,500,300);
- setVisible(true);
- tabbedPane=new JTabbedPane(JTabbedPane.LEFT);
- FlowLayout flow=new FlowLayout();
- flowLayoutPanel=new JPanel();
- flow.setAlignment(FlowLayout.LEFT);
- flow.setVgap(4);
- flow.setHgap(10);
- flowLayoutPanel.setLayout(flow);
- for(int z=1;z<6;z++)
- {
- flowLayoutPanel.add(b[z]);
- }
- tabbedPane.add("觀看FlowLayout佈局",flowLayoutPanel);
- gridLayoutPanel=new JPanel();
- GridLayout grid=new GridLayout(2,3);
- grid.setVgap(6);
- grid.setHgap(8);
- gridLayoutPanel.setLayout(grid);
- for(int y=6;y<12;y++)
- {
- gridLayoutPanel.add(b[y]);
- }
- tabbedPane.add("觀看GriderLayout佈局",gridLayoutPanel);
- borderLayoutPanel=new JPanel();
- BorderLayout border=new BorderLayout();
- border.setVgap(5);
- border.setHgap(7);
- borderLayoutPanel.setLayout(border);
- borderLayoutPanel.add(b[12],BorderLayout.SOUTH);
- borderLayoutPanel.add(b[13],BorderLayout.NORTH);
- borderLayoutPanel.add(text,BorderLayout.CENTER);
- borderLayoutPanel.add(b[14],BorderLayout.EAST);
- borderLayoutPanel.add(b[15],BorderLayout.WEST);
- tabbedPane.add("觀看BorderLayout佈局",borderLayoutPanel);
- boxLayoutPanel=Box.createVerticalBox();
- for (int x=16;x<22;x++)
- {
- boxLayoutPanel.add(b[x]);
- }
- tabbedPane.add("觀看BoxLayout佈局",boxLayoutPanel);
- nullLayoutPanel=new JPanel();
- nullLayoutPanel.setLayout(null);
- for(int w=22;w<27;w++)
- {
- nullLayoutPanel.add(b[w]);
- }
- b[22].setBounds(100,100,60,30);
- b[23].setBounds(130,120,60,30);
- b[24].setBounds(160,140,60,30);
- b[25].setBounds(190,160,60,30);
- b[26].setBounds(210,180,60,30);
- tabbedPane.add("觀看null佈局",nullLayoutPanel);
- splitPaneOne=new JSplitPane(JSplitPane.VERTICAL_SPLIT,b[27],b[28]);
- splitPaneTwo=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,splitPaneOne,b[29]);
- tabbedPane.add("觀看JSplit",splitPaneTwo);
- layeredPane=new JLayeredPane();
- layeredPane.setLayout(null);
- layeredPane.add(b[30],JLayeredPane.DEFAULT_LAYER);
- layeredPane.add(b[31],JLayeredPane.PALETTE_LAYER);
- layeredPane.add(b[32],JLayeredPane.MODAL_LAYER);
- layeredPane.add(b[33],JLayeredPane.POPUP_LAYER);
- layeredPane.add(b[34],JLayeredPane.DRAG_LAYER);
- b[30].setBounds(100,100,60,30);
- b[31].setBounds(130,120,60,30);
- b[32].setBounds(160,140,60,30);
- b[33].setBounds(190,160,60,30);
- b[34].setBounds(210,180,60,30);
- tabbedPane.add("觀看JLayeredPane",layeredPane);
- tabbedPane.validate();
- Container con=getContentPane();
- con.add(tabbedPane,BorderLayout.CENTER);
- con.validate();
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- }
- public class LayoutExample
- {
- public static void main(String args[])
- {
- new MyWin();
- }
- }