¸üÐÂʱ¼ä:2020Äê08ÔÂ20ÈÕ17ʱ48·Ö À´Ô´:ÀÖÓã²¥¿Í ä¯ÀÀ´ÎÊý:
BorderLayout(±ß½ç²¼¾Ö¹ÜÀíÆ÷)ÊÇÒ»ÖÖ½ÏΪ¸´ÔӵIJ¼¾Ö·½Ê½£¬Ëü½«ÈÝÆ÷»®·ÖΪÎå¸öÇøÓò£¬·Ö±ðÊÇҳͷ(PAGE_START)¡¢Ò³Î²(PAGE_END)¡¢ÐÐÊ×(LINE_START)¡¢ÐÐβ(LINE_END)¡¢Öв¿(CENTER)¡£×é¼þ¿ÉÒÔ±»·ÅÖÃÔÚÕâÎå¸öÇøÓòÖеÄÈÎÒâÒ»¸öλÖá£BorderLayout²¼¾ÖЧ¹û¹Ù·½Ê¾ÒâͼÈçͼ1Ëùʾ¡£

ͼ1 BorderLayoutµÄ²¼¾Ö
µ±ÏòBorderLayout²¼¾Ö¹ÜÀíÆ÷µÄÈÝÆ÷ÖÐÌí¼Ó×é¼þʱ£¬ÐèҪʹÓÃadd(Component comp,Object constraints)·½·¨£¬ÆäÖвÎÊýcomp±íʾҪÌí¼ÓµÄ×é¼þ£¬constraintsÖ¸¶¨½«×é¼þÌí¼Óµ½²¼¾ÖÖеÄλÖã¬ËüÊÇÒ»¸öObjectÀàÐÍ£¬ÔÚ´«²Îʱ¿ÉÒÔʹÓÃBorderLayoutÀàÌṩµÄ5¸ö³£Á¿ÉèÖÃ×é¼þλÖã¬ËüÃÇ·Ö±ðÊÇPAGE_START¡¢PAGE_END¡¢LINE_START¡¢LINE_ENDºÍCENTER¡£
½ÓÏÂÀ´Í¨¹ýÒ»¸ö°¸ÀýÀ´ÑÝʾһÏÂBorderLayout²¼¾Ö¹ÜÀíÆ÷¶Ô×é¼þ²¼¾ÖµÄЧ¹û£¬ÈçÎļþ1Ëùʾ¡£
Îļþ1 Example03.java
import java.awt.*;
import javax.swing.*;
public class Example03 {
private static void createAndShowGUI() {
// ´´½¨Ò»¸öÃûΪBorderLayoutµÄ¶¥¼¶ÈÝÆ÷´°¿Ú
JFrame f = new JFrame("BorderLayout");
// ÉèÖô°ÌåÖеIJ¼¾Ö¹ÜÀíÆ÷ΪBorderLayout
f.setLayout(new BorderLayout());
f.setSize(300, 300); // ÉèÖô°Ìå´óС
f.setLocation(300, 200); // ÉèÖô°ÌåÏÔʾµÄλÖÃ
// ÏÂÃæµÄ´úÂëÊÇ´´½¨5¸ö°´Å¥×é¼þ
JButton but1 = new JButton("PAGE_START");
JButton but2 = new JButton("PAGE_END");
JButton but3 = new JButton("LINE_START");
JButton but4 = new JButton("LINE_END");
JButton but5 = new JButton("CENTER");
// ÏÂÃæµÄ´úÂëÊǽ«´´½¨ºÃµÄ°´Å¥×é¼þÌí¼Óµ½´°ÌåÖУ¬²¢ÉèÖð´Å¥ËùÔÚµÄÇøÓò
f.add(but1, BorderLayout.PAGE_START);
f.add(but2, BorderLayout.PAGE_END);
f.add(but3, BorderLayout.LINE_START);
f.add(but4, BorderLayout.LINE_END);
f.add(but5, BorderLayout.CENTER);
f.setVisible(true); // ÉèÖô°Ìå¿É¼û
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
//ʹÓÃSwingUtilities¹¤¾ßÀàµ÷ÓÃcreateAndShowGUI()·½·¨²¢ÏÔʾGUI³ÌÐò
SwingUtilities.invokeLater(Example03::createAndShowGUI);
}
}
ÔËÐнá¹ûÈçͼ2Ëùʾ¡£

ͼ2 BorderLayout²¼¾Ö¹ÜÀíÆ÷
Îļþ1ÖУ¬Ê¹ÓÃJFrameÀàµÄsetLayout()·½·¨ÎªJFrameÈÝÆ÷ÉèÖÃÁËBorderLayout²¼¾Ö¹ÜÀíÆ÷(Ò²¿ÉÒÔ²»ÓÃÉèÖã¬JFrameĬÈϾÍÊÇʹÓÃBorderLayout²¼¾Ö¹ÜÀíÆ÷)£¬Í¬Ê±ÔÚÎļþµÚ12~16ÐдúÂëÖÐͨ¹ýJButton°´Å¥×é¼þÀàµÄ¹¹Ôì·½·¨´´½¨ÁË5¸ö°´Å¥×é¼þ£¬²¢Í¨¹ýadd()·½·¨½«Õâ5¸ö×é¼þ·Ö±ð·ÅÈëJFrameÈÝÆ÷µÄ5¸öÖ¸¶¨ÇøÓòλÖá£
BorderLayoutµÄºÃ´¦¾ÍÊÇ¿ÉÒÔÏÞ¶¨¸÷ÇøÓòµÄ±ß½ç£¬µ±Óû§¸Ä±äÈÝÆ÷´°¿Ú´óСʱ£¬¸÷¸ö×é¼þµÄÏà¶ÔλÖò»±ä¡£µ«ÐèҪעÒâµÄÊÇ£¬ÏòBorderLayoutµÄ²¼¾Ö¹ÜÀíÆ÷Ìí¼Ó×é¼þʱ£¬Èç¹û²»Ö¸¶¨Ìí¼Óµ½ÄĸöÇøÓò£¬ÔòĬÈÏÌí¼Óµ½CENTERÇøÓò£¬²¢ÇÒÿ¸öÇøÓòÖ»ÄÜ·ÅÖÃÒ»¸ö×é¼þ£¬Èç¹ûÏòÒ»¸öÇøÓòÖÐÌí¼Ó¶à¸ö×é¼þʱ£¬ºó·ÅÈëµÄ×é¼þ»á¸²¸ÇÏÈ·ÅÈëµÄ×é¼þ¡£
СÌáʾ£º
ÔÚʹÓÃBorderLayout±ß½ç²¼¾Ö¹ÜÀíÆ÷¹ý³ÌÖУ¬µ±Ê¹ÓÃadd(Component comp,Object constraints)·½·¨ÏòÈÝÆ÷ÇøÓòÖÐÌí¼ÓÖ¸¶¨×é¼þºÍλÖÃʱ£¬³ýÁË¿ÉÒÔʹÓÃÇ°Ãæ½éÉܵÄPAGE_START¡¢PAGE_END¡¢LINE_START¡¢LINE_ENDºÍCENTER³£Á¿²ÎÊýÖ¸¶¨×é¼þλÖã¬Ò²¿ÉÒÔʹÓÃNORTH¡¢SOUTH¡¢EAST¡¢WESTºÍCENTER³£Á¿²ÎÊýÀ´Ö¸¶¨×é¼þλÖã¬Ö»²»¹ýÔÚÎļþ8-3ÖÐʹÓõij£Á¿²ÎÊýÊÇJDK 1.4°æ±¾¿ªÊ¼³öÏֵģ¬Êʺϲ»Í¬ÓïÑÔ±ê×¼£¬Ò²Êǹٷ½Ïà¶ÔÍÆ¼öµÄ¡£
FlowLayout(Á÷ʽ²¼¾Ö¹ÜÀíÆ÷)ÊÇ×î¼òµ¥µÄ²¼¾Ö¹ÜÀíÆ÷£¬ÔÚÕâÖÖ²¼¾ÖÏ£¬ÈÝÆ÷»á½«×é¼þ°´ÕÕÌí¼Ó˳Ðò´Ó×óÏòÓÒ·ÅÖ㬵±µ½´ïÈÝÆ÷µÄ±ß½çʱ£¬»á×Ô¶¯½«×é¼þ·Åµ½ÏÂÒ»ÐеĿªÊ¼Î»Öá£ÕâЩ×é¼þ¿ÉÒÔ°´×ó¶ÔÆë¡¢¾ÓÖÐ¶ÔÆë(ĬÈÏ·½Ê½)»òÓÒ¶ÔÆëµÄ·½Ê½ÅÅÁС£FlowLayoutÀàÓÐÈý¸ö¹¹Ôì·½·¨£¬Èç±í1Ëùʾ¡£
±í1 FlowLayout¹¹Ôì·½·¨
| ·½·¨ÉùÃ÷ | ¹¦ÄÜÃèÊö |
| FlowLayout() | ×é¼þĬÈϾÓÖÐ¶ÔÆë£¬Ë®Æ½¡¢´¹Ö±¼ä¾àĬÈÏΪ5¸öµ¥Î» |
| FlowLayout(int align) | Ö¸¶¨×é¼þÏà¶ÔÓÚÈÝÆ÷µÄ¶ÔÆë·½Ê½£¬Ë®Æ½¡¢´¹Ö±¼ä¾àĬÈÏΪ5¸öµ¥Î» |
| FlowLayout(int align,int hgap,int vgap) | Ö¸¶¨×é¼þµÄ¶ÔÆë·½Ê½ºÍˮƽ¡¢´¹Ö±¼ä¾à |
±í1ÖУ¬ÁгöÁËFlowLayoutµÄÈý¸ö¹¹Ôì·½·¨£¬ÆäÖУ¬²ÎÊýalign¾ö¶¨×é¼þÔÚÿÐÐÖÐÏà¶ÔÓÚÈÝÆ÷±ß½çµÄ¶ÔÆë·½Ê½£¬·Ö±ðΪ×ó¶ÔÆë¡¢ÓÒ¶ÔÆë¡¢¾ÓÖÐ¶ÔÆë£¬¿ÉÒÔʹÓøÃÀàÖÐÌṩµÄ³£Á¿FlowLayout.LEFT¡¢FlowLayout.RIGHT¡¢FlowLayout.CENTER±íʾ¡£²ÎÊýhgapºÍ²ÎÊývgap·Ö±ðÉ趨×é¼þÖ®¼äµÄˮƽºÍ´¹Ö±¼ä¾à£¬¿ÉÒÔÌîÈëÒ»¸öÈÎÒâÊýÖµ¡£
½ÓÏÂÀ´Í¨¹ýÒ»¸öÌí¼Ó°´Å¥µÄ°¸ÀýÀ´Ñ§Ï°Ò»ÏÂFlowLayout²¼¾Ö¹ÜÀíÆ÷µÄÓ÷¨£¬ÈçÎļþ1Ëùʾ¡£
Îļþ1 Example04.java
import java.awt.*;
import javax.swing.*;
public class Example04 {
private static void createAndShowGUI() {
//´´½¨Ò»¸öÃûΪFlowlayoutµÄ´°Ìå
JFrame f = new JFrame("Flowlayout");
// ÉèÖô°ÌåÖеIJ¼¾Ö¹ÜÀíÆ÷ΪFlowLayout£¬
// ËùÓÐ×é¼þ×ó¶ÔÆë£¬Ë®Æ½¼ä¾àΪ20£¬´¹Ö±¼ä¾àΪ30
f.setLayout(new FlowLayout(FlowLayout.LEFT, 20, 30));
f.setSize(400, 200); // ÉèÖô°Ìå´óС
f.setLocation(300, 200); // ÉèÖô°ÌåÏÔʾµÄλÖÃ
// ÏòÈÝÆ÷Ìí¼Ó×é¼þ
f.add(new JButton("µÚ1¸ö°´Å¥"));
f.add(new JButton("µÚ2¸ö°´Å¥"));
f.add(new JButton("µÚ3¸ö°´Å¥"));
f.add(new JButton("µÚ4¸ö°´Å¥"));
f.add(new JButton("µÚ5¸ö°´Å¥"));
f.setVisible(true); // ÉèÖô°Ìå¿É¼û
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// ʹÓÃSwingUtilities¹¤¾ßÀàµ÷ÓÃcreateAndShowGUI()·½·¨²¢ÏÔʾGUI³ÌÐò
SwingUtilities.invokeLater(Example04::createAndShowGUI);
}
}
ÔËÐнá¹ûÈçͼ1Ëùʾ¡£

ͼ1 Á÷ʽ²¼¾Ö¹ÜÀíÆ÷
Îļþ1ÖУ¬ÊµÏÖÁËÒ»¸öÁ÷ʽ²¼¾Ö¹ÜÀíÆ÷¶Ô°´Å¥×é¼þ½øÐйÜÀí¡£ÔÚÕâ¸ö¹ý³ÌÖÐÊ×ÏÈ´´½¨ÁËÒ»¸öJFrame´°¿Ú£¬²¢½«¸Ã´°¿ÚµÄ²¼¾Ö¹ÜÀíÆ÷ÉèÖÃΪFlowLayout£¬È»ºóÏò´°¿ÚÖÐÌí¼Ó5¸ö°´Å¥¡£Í¨¹ýͼ1¿ÉÒÔ¿´³ö£¬¸Ã´°ÌåÖеİ´Å¥°´ÕÕÁ÷ʽ²¼¾Ö¹ÜÀíÆ÷µÄ·½Ê½½øÐÐÁ˲¼¾Ö¡£
GridLayout
GridLayout(Íø¸ñ²¼¾Ö¹ÜÀíÆ÷)ʹÓÃ×ݺáÏß½«ÈÝÆ÷·Ö³ÉnÐÐmÁдóСÏàµÈµÄÍø¸ñ£¬Ã¿¸öÍø¸ñÖпÉÒÔÌí¼ÓÒ»¸ö×é¼þ¡£Ìí¼Óµ½ÈÝÆ÷ÖеÄ×é¼þÊ×ÏÈ·ÅÖÃÔÚµÚ1ÐеÚ1ÁÐ(×óÉϽÇ)µÄÍø¸ñÖУ¬È»ºóÔÚµÚ1ÐеÄÍø¸ñÖдÓ×óÏòÓÒÒÀ´Î·ÅÖÃÆäËû×é¼þ£¬ÐÐÂúºó£¬¼ÌÐøÔÚÏÂÒ»ÐÐÖдÓ×óµ½ÓÒ·ÅÖÃ×é¼þ¡£ÓëFlowLayout²»Í¬µÄÊÇ£¬·ÅÖÃÔÚGridLayout²¼¾Ö¹ÜÀíÆ÷ÖеÄ×é¼þ½«×Ô¶¯Õ¼¾ÝÍø¸ñµÄÕû¸öÇøÓò¡£GridLayoutÀàÓÐÈý¸ö¹¹Ôì·½·¨£¬Èç±í1Ëùʾ¡£
±í1 GridLayout¹¹Ôì·½·¨
| ·½·¨ÉùÃ÷ | ¹¦ÄÜÃèÊö |
| GridLayout() | ĬÈÏÖ»ÓÐÒ»ÐУ¬Ã¿¸ö×é¼þÕ¼Ò»ÁÐ |
| GridLayout(int rows,int cols) | Ö¸¶¨ÈÝÆ÷µÄÐÐÊýºÍÁÐÊý |
| GridLayout(int rows,int cols,int hgap,int vgap) | Ö¸¶¨ÈÝÆ÷µÄÐÐÊýºÍÁÐÊýÒÔ¼°×é¼þÖ®¼äµÄˮƽ¡¢´¹Ö±¼ä¾à |
±í1ÖУ¬ÁгöÁËGridLayoutµÄÈý¸ö¹¹Ôì·½·¨£¬ÆäÖУ¬²ÎÊýrows´ú±íÐÐÊý£¬cols´ú±íÁÐÊý£¬hgapºÍvgap¹æ¶¨´°¸ñÖ®¼äˮƽºÍ´¹Ö±·½ÏòµÄ¼ä¾à¡£
½ÓÏÂÀ´Í¨¹ýÒ»¸ö°¸ÀýÑÝʾGridLayout²¼¾Ö¹ÜÀíÆ÷µÄÓ÷¨£¬ÈçÎļþ1Ëùʾ¡£
Îļþ1 Example05.java
ÔËÐнá¹ûÈçͼ1Ëùʾ¡£
import java.awt.*;
import javax.swing.*;
public class Example05 {
private static void createAndShowGUI() {
// ´´½¨Ò»¸öÃûΪGridLayoutµÄ´°Ìå
JFrame f = new JFrame("GridLayout");
f.setLayout(new GridLayout(3, 3)); // ÉèÖøô°ÌåΪ3*3µÄÍø¸ñ
f.setSize(300, 300); // ÉèÖô°Ìå´óС
f.setLocation(400, 300);
// ÏÂÃæµÄ´úÂëÊÇÑ»·Ìí¼Ó8¸ö°´Å¥×é¼þµ½GridLayoutÈÝÆ÷ÖÐ
for (int i = 1; i < 9; i++) {
Button btn = new Button("btn" + i);
f.add(btn);
}
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// ʹÓÃSwingUtilities¹¤¾ßÀàµ÷ÓÃcreateAndShowGUI()·½·¨²¢ÏÔʾGUI³ÌÐò
SwingUtilities.invokeLater(Example05::createAndShowGUI);
}
}

ͼ1 Íø¸ñ²¼¾Ö¹ÜÀíÆ÷
Îļþ1ÖУ¬JFrame´°¿Ú²ÉÓÃGridLayout²¼¾Ö¹ÜÀíÆ÷£¬ÉèÖÃÁË8¸ö°´Å¥×é¼þ£¬°´Å¥×é¼þ°´ÕÕ±àºÅ´Ó×óµ½ÓÒ¡¢´ÓÉϵ½ÏÂÌî³äÂúÁËÕû¸öÈÝÆ÷¡£GridLayout²¼¾Ö¹ÜÀíÆ÷µÄÌØµãÊÇ×é¼þµÄÏà¶ÔλÖò»ËæÇøÓòµÄËõ·Å¶ø¸Ä±ä£¬µ«×é¼þµÄ´óС»áËæÖ®¸Ä±ä£¬×é¼þʼÖÕÕ¼¾ÝÍø¸ñµÄÕû¸öÇøÓò¡£È±µã¾ÍÊÇ×ÜÊǺöÂÔ×é¼þµÄ×î¼Ñ´óС£¬ËùÓÐ×é¼þµÄ¿í¸ß¶¼Ïàͬ¡£
²ÂÄãϲ»¶
Java swingÊÇʲô?ÓÐʲô×÷ÓÃ?
Swing¶¥¼¶ÈÝÆ÷£ºJFrameºÍJDialog½éÉÜ
Java¸ß¼¶Èí¼þ¹¤³Ìʦ¿Î³Ì
±±¾©Ð£Çø