栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java中的布局嵌套(GUI编程)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java中的布局嵌套(GUI编程)

观前提示:博主正在跟着狂神说的java视频自学

其中有一道题是根据下图创建一个窗口

废话少说,下面是我的代码:

package com.lng.lesson1;

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

public class Test {
    public static void main(String[] args) {
        Frame frame = new Frame();//创建窗口
        //创建面板上下两部分
        Panel p1 = new Panel();
        Panel p2 = new Panel();
        //创建面板中间两部分
        Panel p3 = new Panel();
        Panel p4 = new Panel();
        //创建10个按钮
        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");
        Button btn7 = new Button("btn7");
        Button btn8 = new Button("btn8");
        Button btn9 = new Button("btn9");
        Button btn10 = new Button("btn10");

        frame.setBounds(600,250,500,500);//设置窗口出现位置及大小
        //上下两部分为东西南北中布局
        p1.setLayout(new BorderLayout());
        p2.setLayout(new BorderLayout());
        //中间两部分为表格布局
        p3.setLayout(new GridLayout(2,1));//对应上半部分中间的两行一列
        p4.setLayout(new GridLayout(2,2));//对应下半部分中间的两行两列

        p1.add(btn1,BorderLayout.WEST);//添加上半部分的左边按钮,即西区
        p1.add(btn2,BorderLayout.EAST);//添加上半部分的右边按钮,即东区
        p1.add(p3,BorderLayout.CENTER);//在上半部分的中间部分添加一个新面板

        p2.add(btn3,BorderLayout.WEST);//添加下半部分的左边按钮,即西区
        p2.add(btn4,BorderLayout.EAST);//添加下半部分的左边按钮,即东区
        p2.add(p4,BorderLayout.CENTER);//在下半部分的中间部分添加一个新面板
        //在上半部分的中间部分添加两个按钮(表格布局)
        p3.add(btn5);
        p3.add(btn6);
        //在下半部分的中间部分添加四个按钮(表格布局)
        p4.add(btn7);
        p4.add(btn8);
        p4.add(btn9);
        p4.add(btn10);

        frame.setLayout(new GridLayout(2,1));//窗口布局设置为表格布局,分为上下两部分
        //在窗口添加面板组件
        frame.add(p1);
        frame.add(p2);

        frame.setVisible(true);//窗口可视化
        //添加监听使得窗口可以关闭
        frame.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });
    }


}

具体的解释都在代码里面了,其中我觉得最重要的是面板的嵌套

p1.add(p3,BorderLayout.CENTER);
p2.add(p4,BorderLayout.CENTER);

因为panel本身就是一个组件,即component,所以panel自己添加自己没毛病。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/889058.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号