许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  窗体与对话框默认边界布局管理器详解(Java/Swing)

窗体与对话框默认边界布局管理器详解(Java/Swing)

阅读数 4
点赞 0
article_banner

JFrame、JDialog默认布局管理器

  • 窗体(对话框)的默认布局管理器为边界布局管理器
  • 向其中添加组件时,如没有指定位置,则会占满整个窗体(对话框)
  • 也可以设置布局:setLayout(null):这种情况下,需要手动设置各个组件的位置

Demo01–手动设置组件位置

import javax.swing.*;
import java.awt.*;

public class DemoLayout {
    public static void main(String[] args) {
        JFrame jFrame = new JFrame("默认布局窗体");
        jFrame.setLayout(null);
        JButton jButton1 = new JButton("button1");
        JButton jButton2 = new JButton("button2");
        jButton1.setBounds(10,10,100,20);
        jButton2.setBounds(10,40,100,20);
        jFrame.add(jButton1);
        jFrame.add(jButton2);
        //设置窗体背景色
        jFrame.setBackground(Color.CYAN);
        //设置窗体大小
        jFrame.setSize(400,400);
        //设置窗体可见
        jFrame.setVisible(true);
        //设置窗体关闭方式
        jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }
}

Demo01运行结果如下
在这里插入图片描述
Demo02–使用默认布局

import javax.swing.*;
import java.awt.*;

public class DemoLayout {
    public static void main(String[] args) {
        JFrame jFrame = new JFrame("默认布局窗体");
        JButton jButton1 = new JButton("button1");
        jFrame.add(jButton1);
        //设置窗体背景色
        jFrame.setBackground(Color.CYAN);
        //设置窗体大小
        jFrame.setSize(400,400);
        //设置窗体可见
        jFrame.setVisible(true);
        //设置窗体关闭方式
        jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }
}

Demo02运行结果如下
在这里插入图片描述
Demo03–使用BorderLayout设置组件位置

import javax.swing.*;
import java.awt.*;

public class DemoLayout {
    public static void main(String[] args) {
        JFrame jFrame = new JFrame("默认布局窗体");
//        jFrame.setLayout(null);
        JButton jButton1 = new JButton("button1");
        JButton jButton2 = new JButton("button2");
        //设置组件的位置
        jFrame.add(jButton1,BorderLayout.NORTH);
        jFrame.add(jButton2,BorderLayout.CENTER);
        jFrame.add(BorderLayout.SOUTH,new JButton("button3"));
        //设置窗体背景色
        jFrame.setBackground(Color.CYAN);
        //设置窗体大小
        jFrame.setSize(400,400);
        //设置窗体可见
        jFrame.setVisible(true);
        //设置窗体关闭方式
        jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }
}

Demo03运行结果如下

  • 左边和右边区域默认被其它组件填充

在这里插入图片描述
注意

  • 使用JFrame对象直接调用add()方法添加组件和使用getContentPane()获取一个Container对象来添加组件结果是一样的,Java1.5以后,两种操作方式都是调用同一个add方法
  • 方法如下所示
  public void add(Component comp, Object constraints) {
        addImpl(comp, constraints, -1);
    }



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空