Board logo

標題: 佈局元件 - GridLayout [打印本頁]

作者: tonyh    時間: 2019-9-7 15:10     標題: 佈局元件 - GridLayout

運用 GridLayout 佈局需留意以下事項:
1. 若容器被設為GridLayout,被丟入的元件無法設定位置與大小,大小將依容器大小而改變。
2. GridLayout 預設為一列,而物件之間的水平及垂直間距皆預設為 0 像素。





  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import java.awt.GridLayout;
  4. public class Ch114 {
  5.        
  6.         JFrame fm;
  7.         JButton btn1,btn2,btn3,btn4,btn5,btn6;
  8.         Ch114()
  9.         {
  10.                 JButton btn1=new JButton("xxx");
  11.                 //btn1.setBounds(0, 0, 100, 100);
  12.                 //btn1.setSize(100, 100);
  13.                 //若容器被設為GridLayout,被丟入的元件則無法設定位置與大小,大小將依容器大小而改變
  14.                 JButton btn2=new JButton("xxxxxxx");
  15.                 JButton btn3=new JButton("xxxxxxxxxxx");
  16.                 JButton btn4=new JButton("xxxxxxxxx    xxxxxxx");
  17.                 JButton btn5=new JButton("xxx");
  18.                 JButton btn6=new JButton("x");
  19.                
  20.                 fm=new JFrame("GridLayout");
  21.                 fm.setBounds(100, 100, 300, 200);
  22.                 fm.setVisible(true);
  23.                 fm.setResizable(true);
  24.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  25.                 fm.setLayout(new GridLayout(3,2,5,5));    //3列2欄,水平及垂直間距皆為 5 像素
  26.                 //new GridLayout() 預設為一列,而物件之間的水平及垂直間距皆預設為 0 像素
  27.                 fm.add(btn1);
  28.                 fm.add(btn2);
  29.                 fm.add(btn3);
  30.                 fm.add(btn4);
  31.                 fm.add(btn5);
  32.                 fm.add(btn6);
  33.         }
  34.        
  35.         public static void main(String[] args) {
  36.                 new Ch114();
  37.         }
  38. }
複製代碼

作者: 蕭澧邦    時間: 2019-9-21 12:43

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import java.awt.GridLayout;
  4. public class Ch114 {
  5.         
  6.         JFrame fm;
  7.         JButton btn1,btn2,btn3,btn4,btn5,btn6;
  8.         Ch114()
  9.         {
  10.                 JButton btn1=new JButton("xxx");
  11.                 //btn1.setBounds(0, 0, 100, 100);
  12.                 //btn1.setSize(100, 100);
  13.                 //若容器被設為GridLayout,被丟入的元件則無法設定位置與大小,大小將依容器大小而改變
  14.                 JButton btn2=new JButton("xxxxxxx");
  15.                 JButton btn3=new JButton("xxxxxxxxxxx");
  16.                 JButton btn4=new JButton("xxxxxxxxx    xxxxxxx");
  17.                 JButton btn5=new JButton("xxx");
  18.                 JButton btn6=new JButton("x");
  19.                
  20.                 fm=new JFrame("GridLayout");
  21.                 fm.setBounds(100, 100, 300, 200);
  22.                 fm.setVisible(true);
  23.                 fm.setResizable(true);
  24.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  25.                 fm.setLayout(new GridLayout(3,2,5,5));    //3列2欄,水平及垂直間距皆為 5 像素
  26.                 //new GridLayout() 預設為一列,而物件之間的水平及垂直間距皆預設為 0 像素
  27.                 fm.add(btn1);
  28.                 fm.add(btn2);
  29.                 fm.add(btn3);
  30.                 fm.add(btn4);
  31.                 fm.add(btn5);
  32.                 fm.add(btn6);
  33.         }
  34.         
  35.         public static void main(String[] args) {
  36.                 new Ch114();
  37.         }
  38. }
複製代碼

作者: 蔡幸融    時間: 2019-9-21 14:26

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import java.awt.GridLayout;
  4. public class Ch115 {

  5.         JFrame fm;
  6.         JButton btn1,btn2,btn3,btn4,btn5,btn6;
  7.         Ch115()
  8.         {
  9.                 JButton btn1=new JButton("x");
  10.                 JButton btn2=new JButton("x");
  11.                 JButton btn3=new JButton("x");
  12.                 JButton btn4=new JButton("x");
  13.                 JButton btn5=new JButton("x");
  14.                 JButton btn6=new JButton("x");

  15.                 fm=new JFrame("GridLayout");
  16.                 fm.setBounds(100, 100, 300, 200);
  17.                 fm.setVisible(true);
  18.                 fm.setResizable(true);
  19.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  20.                 fm.setLayout(new GridLayout(3,2,5,5));   
  21.                 fm.add(btn1);
  22.                 fm.add(btn2);
  23.                 fm.add(btn3);
  24.                 fm.add(btn4);
  25.                 fm.add(btn5);
  26.                 fm.add(btn6);
  27.         }

  28.         public static void main(String[] args) {
  29.                 new Ch115();
  30.         }
  31. }
複製代碼

作者: 譚暐霖    時間: 2019-9-21 14:42

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import java.awt.GridLayout;
  4. public class Ch114 {
  5.         
  6.         JFrame fm;
  7.         JButton btn1,btn2,btn3,btn4,btn5,btn6;
  8.         Ch114()
  9.         {
  10.                 JButton btn1=new JButton("xxx");
  11.                 //btn1.setBounds(0, 0, 100, 100);
  12.                 //btn1.setSize(100, 100);
  13.                 //若容器被設為GridLayout,被丟入的元件則無法設定位置與大小,大小將依容器大小而改變
  14.                 JButton btn2=new JButton("xxxxxxx");
  15.                 JButton btn3=new JButton("xxxxxxxxxxx");
  16.                 JButton btn4=new JButton("xxxxxxxxx    xxxxxxx");
  17.                 JButton btn5=new JButton("xxx");
  18.                 JButton btn6=new JButton("x");
  19.                
  20.                 fm=new JFrame("GridLayout");
  21.                 fm.setBounds(100, 100, 300, 200);
  22.                 fm.setVisible(true);
  23.                 fm.setResizable(true);
  24.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  25.                 fm.setLayout(new GridLayout(3,2,5,5));    //3列2欄,水平及垂直間距皆為 5 像素
  26.                 //new GridLayout() 預設為一列,而物件之間的水平及垂直間距皆預設為 0 像素
  27.                 fm.add(btn1);
  28.                 fm.add(btn2);
  29.                 fm.add(btn3);
  30.                 fm.add(btn4);
  31.                 fm.add(btn5);
  32.                 fm.add(btn6);
  33.         }
  34.         
  35.         public static void main(String[] args) {
  36.                 new Ch114();
  37.         }
  38. }
複製代碼

作者: 高睿辰    時間: 2019-9-21 14:59

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import java.awt.GridLayout;
  4. public class Ch114 {
  5.       
  6.         JFrame fm;
  7.         JButton btn1,btn2,btn3,btn4,btn5,btn6;
  8.         Ch114()
  9.         {
  10.                 JButton btn1=new JButton("xxx");
  11.                 JButton btn2=new JButton("xxxxxxx");
  12.                 JButton btn3=new JButton("xxxxxxxxxxx");
  13.                 JButton btn4=new JButton("xxxxxxxxx    xxxxxxx");
  14.                 JButton btn5=new JButton("xxx");
  15.                 JButton btn6=new JButton("x");
  16.                
  17.                 fm=new JFrame("GridLayout");
  18.                 fm.setBounds(100, 100, 300, 200);
  19.                 fm.setVisible(true);
  20.                 fm.setResizable(true);
  21.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  22.                 fm.setLayout(new GridLayout(3,2,5,5));            
  23.                 fm.add(btn1);
  24.                 fm.add(btn2);
  25.                 fm.add(btn3);
  26.                 fm.add(btn4);
  27.                 fm.add(btn5);
  28.                 fm.add(btn6);
  29.         }
  30.       
  31.         public static void main(String[] args) {
  32.                 new Ch114();
  33.         }
  34. }
複製代碼

作者: 黃宥鈞    時間: 2019-9-28 14:18

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import java.awt.GridLayout;
  4. public class Ch114 {
  5.         
  6.         JFrame fm;
  7.         JButton btn1,btn2,btn3,btn4,btn5,btn6;
  8.         Ch114()
  9.         {
  10.                 JButton btn1=new JButton("xxx");
  11.                 //btn1.setBounds(0, 0, 100, 100);
  12.                 //btn1.setSize(100, 100);
  13.                 //若容器被設為GridLayout,被丟入的元件則無法設定位置與大小,大小將依容器大小而改變
  14.                 JButton btn2=new JButton("xxxxxxx");
  15.                 JButton btn3=new JButton("xxxxxxxxxxx");
  16.                 JButton btn4=new JButton("xxxxxxxxx    xxxxxxx");
  17.                 JButton btn5=new JButton("xxx");
  18.                 JButton btn6=new JButton("x");
  19.                
  20.                 fm=new JFrame("GridLayout");
  21.                 fm.setBounds(100, 100, 300, 200);
  22.                 fm.setVisible(true);
  23.                 fm.setResizable(true);
  24.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  25.                 fm.setLayout(new GridLayout(3,2,5,5));    //3列2欄,水平及垂直間距皆為 5 像素
  26.                 //new GridLayout() 預設為一列,而物件之間的水平及垂直間距皆預設為 0 像素
  27.                 fm.add(btn1);
  28.                 fm.add(btn2);
  29.                 fm.add(btn3);
  30.                 fm.add(btn4);
  31.                 fm.add(btn5);
  32.                 fm.add(btn6);
  33.         }
  34.         
  35.         public static void main(String[] args) {
  36.                 new Ch114();
  37.         }
  38. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2