GUI programming - three layouts and exercises

Flow layout:

package com.zwxxGUI.lemsson01;

import java.awt.*;

public class TextFlowLayout {
    
    
    public static void main(String[] args) {
    
    
        Frame frame = new Frame();

        //组件-按钮
        Button button1 = new Button("button1");
        Button button2 = new Button("button2");
        Button button3 = new Button("button3");

        //设置为流式布局
        //frame.setLayout(new FlowLayout());        默认靠左
        //frame.setLayout(new FlowLayout(FlowLayout.LEFT)); //靠左
        //frame.setLayout(new FlowLayout(FlowLayout.RIGHT));//靠右
        frame.setLayout(new FlowLayout(FlowLayout.CENTER)); //居中

        frame.setSize(200,200);

        //把按钮添加上去
        frame.add(button1);
        frame.add(button2);
        frame.add(button3);

        frame.setVisible(true);
    }
}

Layout in southeast, northwest and middle:

package com.zwxxGUI.lemsson01;

import java.awt.*;

public class TestBorderLayout {
    
    
    public static void main(String[] args) {
    
    

        //东西南北中布局
        Frame frame = new Frame("TestBorderLayout");

        Button east = new Button("East");
        Button west = new Button("West");
        Button south = new Button("South");
        Button north = new Button("North");
        Button center = new Button("Center");

        frame.add(east,BorderLayout.EAST);
        frame.add(west,BorderLayout.WEST);
        frame.add(south,BorderLayout.SOUTH);
        frame.add(north,BorderLayout.NORTH);
        frame.add(center,BorderLayout.CENTER);

        frame.setSize(200,200);
        frame.setVisible(true);

    }
}

List layout:

package com.zwxxGUI.lemsson01;

import java.awt.*;

public class TestGridLayout {
    
    
    public static void main(String[] args) {
    
    
        //列表布局
        Frame frame = new Frame("TestGridLayout");

        Button btn1 = new Button("btn1");
        Button btn2 = new Button("btn2");
        Button btn3 = new Button("btn3");
        Button btn4 = new Button("btn4");
        Button btn5 = new Button("btn5");
        Button btn6 = new Button("btn6");

        frame.setLayout(new GridLayout(3,2));

        frame.add(btn1);
        frame.add(btn2);
        frame.add(btn3);
        frame.add(btn4);
        frame.add(btn5);
        frame.add(btn6);

        frame.pack();   //Java函数
        frame.setVisible(true);
    }
}

Implement some layouts:

package com.zwxxGUI.lemsson01;

import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class homework {
    
    
    public static void main(String[] args) {
    
    
    	//平分的一般都是列表布局
        Frame frame = new Frame();
        frame.setVisible(true);
        frame.setSize(400,500);
        frame.setLocation(500,500);
        frame.setLayout(new GridLayout(2,1));


        Panel panel1 = new Panel(new BorderLayout());
        Panel panel2 = new Panel(new BorderLayout());
        Panel panel3 = new Panel(new GridLayout(2,1));
        Panel panel4 = new Panel(new GridLayout(2,2));



//        panel1.setBackground(Color.cyan);
//        panel2.setBackground(Color.RED);


        panel1.add(new Button("button1"),BorderLayout.WEST);
        panel1.add(new Button("button4"),BorderLayout.EAST);
        panel3.add(new Button("button2"));
        panel3.add(new Button("button3"));

        panel1.add(panel3,BorderLayout.CENTER);


        panel2.add(new Button("button5"),BorderLayout.WEST);
        panel2.add(new Button("button10"),BorderLayout.EAST);
//        panel4.add(new Button("button6"));
//        panel4.add(new Button("button7"));
//        panel4.add(new Button("button8"));
//        panel4.add(new Button("button9"));
        for (int i = 0; i < 4; i++) {
    
    
            panel4.add(new Button("button"+(i+6)));
        }

        panel2.add(panel4,BorderLayout.CENTER);

        frame.add(panel1);
        frame.add(panel2);

        //监听时间,监听窗口关闭事件 System.exit(0)
        //适配器模式:  Listnenr:监听器  Adapter:适配
        frame.addWindowListener(new WindowAdapter() {
    
    
            //窗口点击关闭的时候需要做的事情
            @Override
            public void windowClosing(WindowEvent e) {
    
    
                //结束程序
                System.exit(0);
            }
        });
    }
}

1. Use the list to divide into upper and lower parts.
2. Use the layout of the east, west, northwest and middle to place the panels of the west and middle east respectively.
3. Use the list layout in the panel
. Example:
insert image description here

Guess you like

Origin blog.csdn.net/anxious333/article/details/117307281