先看API:

public void setBounds(Rectangle r)

移动组件并调整其大小,使其符合新的有界矩形 r。由 r.x 和 r.y 指定组件的新位置,由 r.width 和 r.height 指定组件的新大小

参数: r - 此组件的新的有界矩形

从API来看,该方法的作用相当于setLocation()与 setSize()的总和。在实际使用时,需将容器的layout设置为null,因为使用布局管理器时,控件的位置与尺寸是由布局管理器来分配的。需要注意的是,这时必须手动指定容器的尺寸,因为空的布局管理器会将容器自身的PreferredSize清零,导致容器无法在GUI上显示。因此,如果容器在上级容器中使用布局管理器排列,那么需使用setPreferredSize(),如果容器在上级容器中仍然手动排列,那么对容器使用setBounds()即可。下面是测试demo:

importjava.awt.Dimension;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;/** 2015-06-14*/

public classsetBoundsDemo {public static voidmain(String[] args) {//TODO Auto-generated method stub//设置panel的layout以及sieze

JPanel jpanel = newJPanel();

System.out.println("default PreferredSize is " +jpanel.getPreferredSize());

System.out.println("default Size is " +jpanel.getSize());

jpanel.setLayout(null);

System.out.println("In null layout, the PreferredSize is " +jpanel.getPreferredSize());

System.out.println("In null layout, the Size is " +jpanel.getSize());

jpanel.setPreferredSize(new Dimension(400, 400));//添加按钮

JButton button11 = new JButton("setBounds");

JButton button12= new JButton("setLocationAndSetSize");

button11.setBounds(20, 20, 100, 100);

button12.setLocation(250, 250);

button12.setSize(100, 100);

jpanel.add(button11);

jpanel.add(button12);//设置窗体属性

JFrame frame = new JFrame("setBoundsDemo");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.add(jpanel);

frame.pack();

frame.setLocationRelativeTo(null);

frame.setVisible(true);

}

}

运行效果如下:

运行效果图

程序输出如下:

default PreferredSize is java.awt.Dimension[width=10,height=10]

default Size is java.awt.Dimension[width=0,height=0]

In null layout, the PreferredSize is java.awt.Dimension[width=0,height=0]

In null layout, the Size is java.awt.Dimension[width=0,height=0]

java的setbounds_Swing-setBounds()用法-入门相关推荐

  1. Java系列技术之JavaWeb入门-钟洪发-专题视频课程

    Java系列技术之JavaWeb入门-1193人已学习 课程介绍         JavaWeb里的基础核心技术 课程收益     把JavaWeb里的核心技术讲清楚! 讲师介绍     钟洪发更多讲 ...

  2. java中的基本用法

    java中的基本用法 关键字:专门用途的字符串 所有java关键字都是小写英文 标识符 java常量 java变量 ■ 作用域:起作用的区域■ 使用前必须先声明,在赋值.使用变量名访问这块区域 jav ...

  3. Java中getResourceAsStream的用法

    Java中getResourceAsStream的用法 首先,Java中的getResourceAsStream有以下几种: 1. Class.getResourceAsStream(String p ...

  4. Java中getResourceAsStream的用法小结

    2019独角兽企业重金招聘Python工程师标准>>> Java中getResourceAsStream的用法小结 一.Java中的getResourceAsStream主要有以下三 ...

  5. java中substring的用法

    2019独角兽企业重金招聘Python工程师标准>>> java中substring的用法 str=str.substring(int beginIndex);截取掉str从首字母起 ...

  6. JAVA中Final的用法

    JAVA中Final的用法 1. 修饰基础数据成员的final 这是final的主要用途,其含义相当于C/C++的const,即该成员被修饰为常量,意味着不可修改.如java.lang.Math类中的 ...

  7. php simpledateformat,Java中SimpleDateFormat的用法介绍(代码示例)

    本篇文章给大家带来的内容是关于Java中SimpleDateFormat的用法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.为什么要使用SimpleDateFo ...

  8. Java 定时任务调度(8)--ElasticJob 入门实战(ElasticJob-Lite使用)

    ElasticJob 是一个分布式调度解决方案,由 2 个相互独立的子项目 ElasticJob-Lite 和 ElasticJob-Cloud 组成.本文主要介绍 ElasticJob-Lite 的 ...

  9. java中demo接人_return的用法_如何理解java中return的用法?

    C语言中return用法?(请熟练者进) return是返回值,这个返回值是和函数的类型有关的,函数的类型是什么,他的返回值就是什么 比方主函数intmain() {}这里就必须有一个return,只 ...

  10. Java 8 Stream 流用法及语法

    Java 8 Stream 流用法 1.简介 Stream流 最全的用法 Stream 能用来干什么?用来处理集合,通过 使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据 ...

最新文章

  1. Android仿网易新闻导航栏PagerSlidingTabStrip
  2. [Java基础]异常概述与异常处理
  3. leetcode 220. 存在重复元素 III(排序)
  4. 余承东嘲讽苹果:iPhone 12落后华为Mate40两代
  5. Mybatis plus修改了Language Level后,IDEA运行应用出现了Information:java: javacTask: 源发行版 8 需要目标发行版 1.8
  6. LeetCode(561)——数组拆分 I(JavaScript)
  7. 失业了又不想进厂打工,怎么办
  8. MDaemon替换注册码怎样人工激活.docx
  9. CentOS 6.5安装Tomcat-9.0.0.M19
  10. Git常用指令的使用
  11. php添加开机启动脚本_php-fpm开机自动启动Shell脚本
  12. matlb:图像的几何矩,中心矩,Hu不变矩(含代码)
  13. 第八章 软件维护(1)
  14. 回答阿里云实名认证常见问题
  15. 计算机专业设计(论文)内容及要求,计算机专业毕业设计要求.doc
  16. html5 swipejs,移动web最简洁的滑动效果Swipe JS(适合初学者)
  17. b站弹幕 so文件解析/逆序列化
  18. 7-139 手机话费 (10分)
  19. 俞敏洪:像水一样积蓄自己的力量
  20. 2021年危险化学品生产单位安全生产管理人员考试资料及危险化学品生产单位安全生产管理人员实操考试视频

热门文章

  1. 深入存储驱动:Overlay2
  2. win10系统安装jdk8,并且配置环境变量教程
  3. cv::Mat转换为QImage错误
  4. 红帽Linux如何设置root权限,LINUX下 一句话添加用户并设置ROOT权限
  5. 我的数学学习回忆录——一个数学爱好者的反思(二)
  6. AutoML 是否被过度炒作?
  7. element.style样式如何修改
  8. 深入理解Flash Player的安全域(Security Domains)
  9. 【思特奇杯·云上蓝桥-算法集训营】第1周----真题汇总+思路分析
  10. 60 集合的交集、并集和差集运算