setSize()、setPreferredSize()都可以设置组件的大小,但二者的使用有所不同。

1、setSize()的使用方式

  • setSize(int width,int height)
  • setSize(Dimension d)

2、setPreferredSize()的使用方式

  • setSize(Dimension d)

setPreferredSize()是设置首选尺寸。一般情况下:

  • 如果该组件受布局管理器管理(使用默认的也算),需要使用setPreferredSize()设置尺寸,setSize()无效。
  • 如果该组件不受布局管理器管理,需要使用setSize(),setPreferredSize()无效。

比如:

JFrame设置了布局管理器,往JFrame中添加一个JLabel,JLabel受布局管理器管理,需要使用setPreferredSize(),setSize()无效。受指的是JLabel,不是布局管理器所在的容器JFrame,JFrame没有受到布局管理器的管理,要使用setSize()。

是说该组件受到布局管理器的管理,不是说该组件本身设置了布局管理器。

3、Dimension的使用方式

构造函数:

  • Dimension(int width,int height)     //只能是int ,不能是double

常用方法:

  • getWidth/Height()       //返回值均为double。也可直接访问属性width、height。
  • setSize(int width,int height)   //不能单独设置其中一个
  • setSIze(double width,double height)

Java GUI setSize()、setPreferredSize()的区别的更多相关文章

  1. 浅谈JAVA GUI中,AWT与Swing的区别、联系及优缺点

    浅谈JAVA GUI中,AWT与Swing的区别.联系及优缺点 A.区别 1.发布的时间 AWT是在JDK 1.0版本时提出的 Swing是在AWT之后提出的(JAVA 2) 2. ”重量” AWT是 ...

  2. Java GUI:将JPanel添加进JScrollPane

    实现的目标: 因为在滚动框中含有很多个Java GUI 组件,因此这里采用JPanel面板包住这些组件,在用JScrollPane实现滚动 问题1:布局揉在一起 JPanel有自己默认的布局方式,因此 ...

  3. Java GUI 桌面应用开发

    前言 虽然现在已经很少项目会涉及GUI技术,但作为一个合格的Java开发工程师,还是得了解才得 本文记录,idea使用JFormDesigner插件进行Java GUI 桌面应用开发 GUI Swin ...

  4. paip.java gui swt/jface 最佳实践

    paip.java gui swt/jface 最佳实践 1. 工具:Eclipse +jigloo4 1 2. 安装插件: 1 1. IMPORT swt lib 2 2. 新建立窗体 2 3. 运 ...

  5. [置顶] java Gui 键盘监听事件

    简单写一个java Gui键盘监听事件,实现的效果就是按下键盘控制台输出你按下的键.比如:按下A控制台就输出A 效果如图: 以下把实现的效果分为几个步骤: 1.新建一个窗体类继承窗体: 2.给这个窗体 ...

  6. java Gui编程 事件监听机制

    1.     GUI编程引言 以前的学习当中,我们都使用的是命令交互方式: 例如:在DOS命令行中通过javac java命令启动程序. 软件的交互的方式:   1. 命令交互方式    图书管理系统 ...

  7. Java -GUI开发九九乘法表

    Java GUI开发九九乘法表 (1)实现目标: 利用java自带的awt包,基础控件开发一个九九乘法表,点击可以显示对应的乘法口诀. (2)控件选择: 点击——Button 显示——TextFiel ...

  8. Java GUI编程4---标签组件JLabel

    Java GUI编程4---标签组件JLabel 2018年06月11日 22:06:58 蓝蓝223 阅读数 12103更多 个人分类: Java书籍摘抄 所属专栏: Java Swing图形界面 ...

  9. Java GUI 图书管理系统

    01 概述 一款功能强大的图书馆管理系统,功能齐全,小白/大学生项目实训,学习的不二之选. 02 技术 此系统使用 java awt 实现.java.awt是一个软件包,包含用于创建用户界面和绘制图形 ...

随机推荐

  1. bzoj3569

    线性基 非常高端 强制在线动态图 我们先搞出一个dfs树,然后所有非树边都和树边形成一个环.我们考虑什么情况会不连通,当且仅当树边和dfs序大于当前点的返祖边都被断掉才不连通,那么我们给每个非树边赋一 ...

  2. Java编程环境IntelliJ IDEA

    1. 下载并安装jdk,进行配置 https://www.cnblogs.com/zhangchao0515/p/6806408.html 2. 下载并安装 IntelliJ IDEA, 并进行破解 ...

  3. TypeScript完全解读(26课时)_8.ES6精讲-ES6中的类(进阶)

    8.TypeScript完全解读-ES6精讲-类(进阶) 在index.ts内引入 Food创建的实例赋值给Vegetabled这个原型对象,这样使用Vegetables创建实例的时候,就能继承到Fo ...

  4. springboot+mongodb报错Caused by: java.net.ConnectException: Connection refused (Connection refused)

    com.mongodb.MongoSocketOpenException: Exception opening socket at com.mongodb.connection.SocketStrea ...

  5. Python3.6列表函数&方法

    函数: 1.len(list) 列表元素个数 2.max(list) 返回列表元素最大值 3.min(list) 返回列表元素最小值 4.list(seq) 将元组转换为列表 5.enumerate( ...

  6. 718. Maximum Length of Repeated Subarray

    Given two integer arrays A and B, return the maximum length of an subarray that appears in both arra ...

  7. (十四)SpringBoot开发微信授权支付

    前提:配置好域名,在公众号配置 一.引用jar包,在pom.xml文件加入依赖 <dependency> <groupId>com.github.binarywang</ ...

  8. STC单片机掉电断电失电瞬间EEPROM数据保存处理办法(转)

    由于客户在请人设计开发一设备,但是设备用户处总停电,造成设备及其周边耗材损耗严重,因此请我司在现有STC为主要芯片的基础上做掉电瞬间EEPROM里的20个参数保存,上电后通过读取EEPROM中的参数回 ...

  9. Android Activity生命周期(转)

    转自 http://blog.csdn.net/android_tutor/article/details/5772285

  10. JavaScript 中的面向对象编程

    使用JSON 来定义一个对象: <script type="text/javascript">var xiaoming = { name : 'xiaoming', a ...