文章目录

  • 布局怎么设置通过 获取container 然后container.setLoot(布局样式)
  • 1.绝对布局也叫null布局
  • 2.流布局 FlowLayout
  • 3.边界布局BorderLayout
    • 覆盖特点
  • 4.网格布局GridLayout
  • 5.网格包组件GridBagLayout
    • 5-1填充方式
    • 5-2方位填充
    • 5-3insets属性
    • 5-4放大缩小

布局怎么设置通过 获取container 然后container.setLoot(布局样式)



1.绝对布局也叫null布局

2.流布局 FlowLayout

container.setLoot(new FlowLayout(对齐方式,水平间距,垂直) )

3.边界布局BorderLayout

覆盖特点

4.网格布局GridLayout

5.网格包组件GridBagLayout


import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;import javax.swing.JButton;
import javax.swing.JFrame;public class ExampleFrame_03 extends JFrame {/*** */private static final long serialVersionUID = 1L;public static void main(String args[]) {ExampleFrame_03 frame = new ExampleFrame_03();frame.setVisible(true);}public ExampleFrame_03() {super();setTitle("使用网格组布局管理器");getContentPane().setLayout(new GridBagLayout());setBounds(100, 100, 500, 170);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);final JButton button = new JButton("A");final GridBagConstraints gridBagConstraints = new GridBagConstraints();gridBagConstraints.gridy = 0;// 起始点为第1行gridBagConstraints.gridx = 0;// 起始点为第1列gridBagConstraints.weightx = 10;// 第一列的分布方式为10%gridBagConstraints.fill = GridBagConstraints.HORIZONTAL;getContentPane().add(button, gridBagConstraints);final JButton button_1 = new JButton("B");final GridBagConstraints gridBagConstraints_1 = new GridBagConstraints();gridBagConstraints_1.gridy = 0;gridBagConstraints_1.gridx = 1;// 设置组件左侧的最小距离gridBagConstraints_1.insets = new Insets(0, 5, 0, 0);gridBagConstraints_1.weightx = 20;// 第一列的分布方式为20%gridBagConstraints_1.fill = GridBagConstraints.HORIZONTAL;getContentPane().add(button_1, gridBagConstraints_1);final JButton button_2 = new JButton("C");final GridBagConstraints gridBagConstraints_2 = new GridBagConstraints();gridBagConstraints_2.gridy = 0;// 起始点为第1行gridBagConstraints_2.gridx = 2;// 起始点为第3列gridBagConstraints_2.gridheight = 2;// 组件占用两行gridBagConstraints_2.insets = new Insets(0, 5, 0, 0);gridBagConstraints_2.weightx = 30;// 第一列的分布方式为30%// 同时调整组件的宽度和高度gridBagConstraints_2.fill = GridBagConstraints.BOTH;getContentPane().add(button_2, gridBagConstraints_2);final JButton button_3 = new JButton("D");final GridBagConstraints gridBagConstraints_3 = new GridBagConstraints();gridBagConstraints_3.gridy = 0;gridBagConstraints_3.gridx = 3;gridBagConstraints_3.gridheight = 4;// 设置组件左侧和右侧的最小距离gridBagConstraints_3.insets = new Insets(0, 5, 0, 5);gridBagConstraints_3.weightx = 40;// 第一列的分布方式为40%gridBagConstraints_3.fill = GridBagConstraints.BOTH;getContentPane().add(button_3, gridBagConstraints_3);final JButton button_4 = new JButton("E");final GridBagConstraints gridBagConstraints_4 = new GridBagConstraints();gridBagConstraints_4.gridy = 1;gridBagConstraints_4.gridx = 0;gridBagConstraints_4.gridwidth = 2;// 组件占用两列// 设置组件上方的最小距离gridBagConstraints_4.insets = new Insets(5, 0, 0, 0);// 只调整组件的宽度gridBagConstraints_4.fill = GridBagConstraints.HORIZONTAL;getContentPane().add(button_4, gridBagConstraints_4);final JButton button_5 = new JButton("F");final GridBagConstraints gridBagConstraints_5 = new GridBagConstraints();gridBagConstraints_5.gridy = 2;// 起始点为第3行gridBagConstraints_5.gridx = 0;// 起始点为第1列gridBagConstraints_5.insets = new Insets(5, 0, 0, 0);gridBagConstraints_5.fill = GridBagConstraints.HORIZONTAL;getContentPane().add(button_5, gridBagConstraints_5);final JButton button_6 = new JButton("G");final GridBagConstraints gridBagConstraints_6 = new GridBagConstraints();gridBagConstraints_6.gridy = 2;gridBagConstraints_6.gridx = 1;gridBagConstraints_6.gridwidth = 2;// 组件占用两列gridBagConstraints_6.gridheight = 2;// 组件占用两行gridBagConstraints_6.insets = new Insets(5, 5, 0, 0);gridBagConstraints_6.fill = GridBagConstraints.BOTH;// 只调整组件的高度
//      gridBagConstraints_6.fill = GridBagConstraints.VERTICAL;// 只调整组件的高度
//      gridBagConstraints_6.ipadx = 30;// 增加组件的首选宽度
//      gridBagConstraints_6.anchor = GridBagConstraints.EAST;// 显示在东方getContentPane().add(button_6, gridBagConstraints_6);final JButton button_7 = new JButton("H");final GridBagConstraints gridBagConstraints_7 = new GridBagConstraints();gridBagConstraints_7.gridy = 3;gridBagConstraints_7.gridx = 0;gridBagConstraints_7.insets = new Insets(5, 0, 0, 0);gridBagConstraints_7.fill = GridBagConstraints.HORIZONTAL;getContentPane().add(button_7, gridBagConstraints_7);//}}

5-1填充方式

5-2方位填充

5-3insets属性


5-4放大缩小

javaSwing布局相关推荐

  1. Java图形编程实验总结_实验二java图形界面编程2015级.doc

    实验二java图形界面编程2015级.doc 实验二JAVA图形界面编程一.实验目的熟悉JAVA运行环境,编程掌握JAVASWING组件的图形界面编程.二.实验环境微机,软件MYECLIPSE,JDK ...

  2. Java Swing 图形界面开发(目录)

    本文链接: https://blog.csdn.net/xietansheng/article/details/72814492 0. JavaSwing 简介 Java Swing 图形界面开发简介 ...

  3. Java Swing 图形界面开发教程(目录)

    参考文章:Java Swing 图形界面开发(目录) 0. JavaSwing 简介 Java Swing 图形界面开发简介 1. JavaSwing 布局管理器 avaSwing_1.1: Flow ...

  4. JavaSwing学习日记(九)CardLayout(卡片布局)

    JavaSwing学习日记(九) CardLayout(卡片布局) 从概念上讲,CardLayout管理的每个组件都像扑克牌或堆栈中的卡,其中在任何时候都只有顶部的卡可见.也就是说一次仅可见一个组件. ...

  5. java swing 页面布局方式_javaswing酷炫界面

    java swing怎样开发出漂亮的界面 Swing 支持切换界面风格啊... 默认的是Metal风格,确实不好看 你可以切换为Windows风格,看起来和Windows上的程序就是一样滴了,还可以切 ...

  6. JavaSwing编程总结

    都2021年了,还有人用JavaSwing?这只是我的一个爱好,我喜欢做界面开发,但是又只有Java还学的不错,大部分Java书籍中对JavaSwing介绍的都比较一般,我便找了<Java2图形 ...

  7. 超市管理系统-1(JavaSwing和Oracle数据库)

    这是我第一次接触Oracle数据库并且利用JavaSwing图形界面编写的一个简单的超市管理系统,其实整体代码后续看了一下,因为JDBC刚接触以及之前JavaSE没学清楚,弄得代码逻辑很繁杂,后面想改 ...

  8. JavaSwing真的过时了吗?请不要忽略了它的启蒙作用

    javaSwing的小页面虽然功能或前后端交互方面与web工程相比有不足,但在今后学习中具有启蒙的重要地位 以下是我要讲的内容(细致内容自己学习,这里只做引导) 项目展示(主要) javaSwing的 ...

  9. JavaSwing页面的简单操作

    JavaSwing页面的简单操作: 先上效果图: 本页面通过三个类完成: MainFrame类: package com.sys;import java.awt.event.ActionEvent; ...

最新文章

  1. python黑色背景编辑器_如何更换python默认编辑器的背景色
  2. AutoLisp:AutoLisp实现对AutoCAD进行输入命令,选择对象,实现不同方向进行缩放
  3. Oracle 存储结构_表空间简介
  4. vue中手机号,邮箱正则验证以及60s发送验证码
  5. Java中interrupted()和isInterrupted()之间的区别
  6. MFC多文档框架 基于CVIEW视图类正常显示超出屏幕范围的部分(支持BCG库绘图)
  7. 代码的坏味道:控制结构嵌套太深
  8. python安装matplotlib需要c编译_新安装matplotlib时缺少cbook
  9. Activities
  10. Kali 更新失败 签名无效
  11. Windows7 arp表删除方法
  12. IPSAN与FCSAN存储结构的区别
  13. java delayqueue_详解java中DelayQueue的使用
  14. 郑州java工程师待遇怎么样_Java工程师工资待遇怎么样?
  15. 利用asp.net Core开发webapi对接云之家智能审批数据互联控件
  16. HDU 4125 Moles 二叉排序树 树状数组 kmp
  17. 如何设置计算机自动连接宽带,Win7系统如何设置开机自动连接宽带?
  18. 还弄不懂相对路径和绝对路径,这篇文章带你简单剖析
  19. webview卡顿_分享三个小技巧,微信卡顿的人千万不要错过哦
  20. 比尔盖茨小时候的故事

热门文章

  1. 大数据垃圾短信自动化识别系统的研发与应用
  2. 80X86汇编语言程序设计教程(杨季文)习题答案一
  3. vue.js 3.0 Bate 详解【持续更新】
  4. 几种判断整数是偶数(Even)的算法对比
  5. 会议学习笔记(一):第十五届《前沿技术讲习班》之唐建
  6. Mark Grover
  7. C# 如何打印Word文档
  8. 25天破千万,胡轩108新国货产品凭什么媲美国际大牌?
  9. 基于Java毕业设计学生用品交换平台源码+系统+mysql+lw文档+部署软件
  10. 4种常见的内容分发方式