[疯狂Java笔记]AWT:BorderLayout方位布局
来源:互联网 发布:淘宝四个钻石 编辑:程序博客网 时间:2024/04/27 13:30
1. BorderLayout——方位布局:
1) 布局分为东西南北中五个方位,每个方位中只能放一个组件,如果同时放了多个组件,那么后放入的就会覆盖之前放入的,这点非常值得注意!
2) 如果添加组件时没有指定放在哪个方位则默认放在中;
3) 当BorderLayout布局的容器改变大小(发生拉伸)时,南北位只会水平伸缩,东西位只会垂直伸缩,而中会同时在水平和垂直方向上伸缩;
4) Window系(Frame、Dialog)和ScrollPane都是默认方位布局的;
5) 在对框架使用setLayout设定好方位布局之后,就可以在add组件的时候可以指定具体将组件放入那个方位中,这就Container类中对add的重载:
Component Container.add(Component comp, int index); // index就是在不同布局模式下特定的索引
!!在BorderLayout中就是5个方位,是BorderLayout类中定义的静态常量:NORTH、SOUTH、WEST、EAST、CENTER
!例如:f.add(new Button("test"), BorderLayout.EAST);
!!如果不指定方位,则默认加入到中部
6) 构造器:
i. 默认构造器:BorderLayout(); // 使用默认的
ii. 指定水平和垂直间距(组件之间的):BorderLayout(int hgap, int vgap);
7) 示例:
public class AwtTest {public static void main(String[] args) {// TODO Auto-generated method stubFrame f = new Frame("BorderLayout Test");f.setLayout(new BorderLayout(30, 5));f.add(new Button("East"), BorderLayout.EAST);f.add(new Button("West"), BorderLayout.WEST);f.add(new Button("Center")); // 默认放在中部f.add(new Button("North"), BorderLayout.NORTH);f.add(new Button("South"), BorderLayout.SOUTH);f.pack();f.setVisible(true);}}
8) 虽然方位布局只能容纳五个组件,看上去很没用,但是容器是可以嵌套的,一旦嵌套起来就可以形成很复杂的画面了,示例:嵌套一个Panel
public class AwtTest {public static void main(String[] args) {// TODO Auto-generated method stubFrame f = new Frame("BorderLayout Test");f.setLayout(new BorderLayout(30, 5));Panel p = new Panel();p.add(new TextField(20));p.add(new Button("push"));f.add(new Button("East"), BorderLayout.EAST);// no WEST,一旦一个方位没有放组件,那么相邻的方位就会侵占它的空间f.add(p); f.add(new Button("North"), BorderLayout.NORTH);f.add(new Button("South"), BorderLayout.SOUTH);f.pack();f.setVisible(true);}}
- [疯狂Java笔记]AWT:BorderLayout方位布局
- [疯狂Java笔记]AWT:CardLayout卡堆布局
- [疯狂Java笔记]AWT:BoxLayout盒式布局、Box容器
- Java AWT编程 布局管理器(二)BorderLayout
- [疯狂Java笔记]AWT:布局管理器、绝对布局、FlowLayout流式布局
- [疯狂Java笔记]AWT:GridLayout网格布局、GridBagLayout网格袋布局
- java awt 简单示例 BorderLayout
- awt简单应用 布局管理器 BorderLayout GridLayout
- 关于awt的BorderLayout布局管理器
- [疯狂Java笔记]AWT容器简介
- [疯狂Java笔记]AWT:常用组件
- java 布局之BorderLayout
- javaAPI文档翻译之Java.awt.BorderLayout
- [疯狂Java笔记]图形用户界面、AWT、Swing简介
- [疯狂Java笔记]AWT组件和容器的概念
- [疯狂Java笔记]AWT:Dialog对话框类、FileDialog文件对话框
- [疯狂Java]AWT:右键菜单
- [疯狂Java]AWT:绘图、动画
- (转载)《相信自己》
- 高等数学:第九章 重积分(1)二重积分的概念、计算法和应用
- 1111111111
- 我心目中的Asp.net核心对象
- 项目经理之项目经理的选拔
- [疯狂Java笔记]AWT:BorderLayout方位布局
- sqlplus 命令详解
- github常见操作和常见错误!
- CSDN-markdown编辑器说明
- 高等数学:第九章 重积分(2)三重积分的概念、应用,利用柱面坐标和球面坐标计算三重积分
- 项目经理之项目的投资回报率
- 提升用户体验之A/B测试(3)——sixpack-js客户端
- JS中都有哪些数据类型呢?
- 机会网络路由协议学习之MaxProp