展开全部

java中的GridBagLayout调组件间距使用百分比来调,实例如下:package JavaGUI;

import java.awt.EventQueue;

import java.awt.GridBagConstraints;

import java.awt.GridBagLayout;

import java.awt.Insets;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.border.EmptyBorder;

import javax.swing.UIManager;

public class GridBagLayoutDemo extends JFrame {

/**

*

*/

private static final long serialVersionUID = -4481121176026056530L;

private JPanel contentPane;

/**

* Launch the application.

*/

public static void main(String[] args) {

try {

UIManager

.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");

} catch (Throwable e) {

e.printStackTrace();

}

EventQueue.invokeLater(new Runnable() {

public void run() {

try {

GridBagLayoutDemo frame = new GridBagLayoutDemo();

frame.setVisible(true);

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

/**

* Create the frame.

*/

public GridBagLayoutDemo() {

setTitle("网格组布局");// 设置窗体32313133353236313431303231363533e58685e5aeb931333337616635的标题

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置窗体退出时操作

setBounds(100, 100, 450, 200);// 设置窗体位置和大小

contentPane = new JPanel();// 创建内容面板

contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));// 设置面板的边框

setContentPane(contentPane);// 应用内容面板

GridBagLayout gbl_contentPane = new GridBagLayout();// 创建网格组布局

contentPane.setLayout(gbl_contentPane);// 使用网格组布局

JButton button1 = new JButton("A");// 创建按钮

GridBagConstraints gbc_button1 = new GridBagConstraints();// 创建网格组布局约束条件

gbc_button1.insets = new Insets(0, 0, 5, 5);// 设置控件的空白

gbc_button1.fill = GridBagConstraints.HORIZONTAL;// 设置填充方式

gbc_button1.weightx = 10.0;// 第一列的分布方式为10%

gbc_button1.gridx = 0;// 起始点为第1列

gbc_button1.gridy = 0;// 起始点为第1行

contentPane.add(button1, gbc_button1);// 增加按钮及其约束条件

JButton button2 = new JButton("B");// 创建按钮

GridBagConstraints gbc_button2 = new GridBagConstraints();// 创建网格组布局约束条件

gbc_button2.insets = new Insets(0, 5, 5, 5);// 设置控件的空白

gbc_button2.fill = GridBagConstraints.HORIZONTAL;// 设置填充方式

gbc_button2.weightx = 20.0;// 第一列的分布方式为20%

gbc_button2.gridx = 1;// 起始点为第2列

gbc_button2.gridy = 0;// 起始点为第1行

contentPane.add(button2, gbc_button2);// 增加按钮及其约束条件

JButton button3 = new JButton("C");// 创建按钮

GridBagConstraints gbc_button3 = new GridBagConstraints();// 创建网格组布局约束条件

gbc_button3.gridheight = 2;// 占用2列

gbc_button3.fill = GridBagConstraints.BOTH;// 设置填充方式

gbc_button3.weightx = 30.0;// 第一列的分布方式为30%

gbc_button3.insets = new Insets(0, 0, 5, 5);// 设置控件的空白

gbc_button3.gridx = 2;// 起始点为第3列

gbc_button3.gridy = 0;// 起始点为第1行

contentPane.add(button3, gbc_button3);// 增加按钮及其约束条件

JButton button4 = new JButton("D");// 创建按钮

GridBagConstraints gbc_button4 = new GridBagConstraints();// 创建网格组布局约束条件

gbc_button4.weightx = 40.0;// 第一列的分布方式为40%

gbc_button4.fill = GridBagConstraints.BOTH;// 设置填充方式

gbc_button4.gridheight = 4;// 占用4列

gbc_button4.insets = new Insets(0, 5, 0, 0);// 设置控件的空白

gbc_button4.gridx = 3;// 起始点为第4列

gbc_button4.gridy = 0;// 起始点为第1行

contentPane.add(button4, gbc_button4);// 增加按钮及其约束条件

}

}

java中怎么固定间距_java中的GridBagLayout是怎么调组件间距的...相关推荐

  1. java中的集合框架_JAVA中的集合框架(上)List

    第一节 JAVA中的集合框架概述 集合的概念,现实生活中:很多事物凑在一起就是一个集合:数学中的集合:具有相同属性事物的总体:JAVA中的集合:是一种工具类,就像是容器,储存任意数量的具有共同属性的对 ...

  2. Java NIO_I/O基本概念_Java中的缓冲区(Buffer)_通道(Channel)_网络I/O

    I/O基本概念 缓冲区基础 缓冲区是I/O的基础, 进程使用read(), write()将数据读出/写入从缓冲区中; 当缓冲区写满, 内核向磁盘发出指令, 将缓冲区中数据写入磁盘中(这一步不需要CP ...

  3. java内存堆和栈_java中堆,栈主要区别及内存存储

    java堆.栈.堆栈的区别 1.栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 2. 栈的优势是,存取速度 ...

  4. java抽象类有什么用_java中抽象类的作用是什么?抽象类作用的例子

    你知道java当中抽象类的作用是什么吗?有什么作用?下面和小编一起来详细的了解一下具体的作用,以及看看抽象类作用的例子吧! 一.java抽象类的作用 java抽象类的作用具体的可以分成以下的三点: 1 ...

  5. java中 enum什么意思_Java中“enum”的用途是什么?

    本问题已经有最佳答案,请猛点这里访问. 所以我研究了这个"枚举"类型,在我看来它有点像一个美化的数组/ArrayList/List.它的具体用途是什么? 你觉得它是以什么样的方式排 ...

  6. java int转无符号_Java 中使用无符号整型(unsigned int)的使用方法

    背景 计算机科班出身大多学过离散数学,或者理工类专业也大多学习过 C 或 C++ 语言,从中我们了解到基本类型的整形有 short.int.long 等,还分别有无符号(unsigned)和带符号(s ...

  7. java boolean几个字节_Java中boolean类型到底占用多少个字节?

    1.时间:2017-07-03 07:37:06YuanMxy 2.问题描述:今天在复习java基础的时候发现一小问题,Java中boolean类型到底占用多少个字节? 3.问题解答: (1)什么是b ...

  8. java 基本类型的引用_Java中的基本数据类型与引用数据类型

    一.基本数据类型 byte.short.int.long(整数类型) float.double(浮点数类型) char(字符型) boolean(布尔类型 ) Java数据大多数存放在堆栈中.栈区:存 ...

  9. java对于数组的定义_Java中方法的定义与使用,以及对数组的初步了解。

    方法 方法的含义 定义: 方法就是用来完成解决某件事情或实现某个功能的办法. 方法实现的过程中,会包含很多条语句用于完成某些有意义的功能--通常是处理文本,控制输入或计算数值. 我们可以通过在程序代码 ...

最新文章

  1. 轻松记账工程冲刺第二阶段10
  2. 【机器学习基本理论】详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解
  3. 剑指offer-栈的压入、弹出序列
  4. android lint工作机制,Android架构
  5. 理解lambda在linq中的应用
  6. Python实战从入门到精通第十七讲——将单方法的类转换为函数
  7. SpringCloud SpringBoot mybatis分布式微服务云架构开发Web应用
  8. STM32 ARM调试问题总结
  9. java IO流、集合类部分小知识点总结
  10. Flutter入门(3)—打包项目[Android]
  11. Web应用程序开发课程总结
  12. oracle的floor用法,oracle ceil floor 函数的用法
  13. 如何用GIS做城市购房选址分析
  14. Photoshop cs5 永久序列号
  15. Java进阶(八)Stream、异常体系
  16. 2018年度计划清单
  17. 数据结构 算法与应用(c++ 描述) 自练答案
  18. 5、SpringMVC自动配置概览
  19. 计算机网络mooc单元测试答案
  20. 【Codecs系列】HEVC-SCC(七):调色板PM模式分析

热门文章

  1. cnetos7 vncserver安装与配置
  2. java线程四种状态
  3. Android机器人电池插件源码
  4. 人生的抉择-创业纪录片(二)-起步期
  5. 远程linux的几个工具
  6. centeros /redhate密码破解
  7. SD-WAN成本节省取决于基础WAN技术
  8. 【数据库】数据库单表对比
  9. 最简单的http服务器实现
  10. loj10095 间谍网络