Java开发GUI之BorderLayout边界布局

Java开发GUI之BorderLayout边界布局

    前面博客中所提及的例子都是针对单独的视图组件,将组件组合并布局在合适的位置才能算是完整的界面。Java中的布局采用布局管理器模式进行,提供了跨平台性,BoaderLayout布局管理器会将其内容分成5个部分,上下左右和中心,示例代码如下:

	static void BorderLayoutTest(){
		Frame frame = new Frame("Label");
		BorderLayout layout = new BorderLayout(10,15);
		Panel pannel = new Panel(layout);
		pannel.add(BorderLayout.NORTH, new Button("北方"));
		pannel.add(BorderLayout.SOUTH, new Button("南方"));
		pannel.add(BorderLayout.EAST, new Button("东方"));
		pannel.add(BorderLayout.WEST, new Button("西方"));
		pannel.add(BorderLayout.CENTER, new Button("中心"));
		frame.add(pannel);
		frame.pack();
		frame.show();
	}

效果如下:

BorderLayout中常用方法解析:

//常量 指定布局在北方位置
public static final String NORTH  = "North";
//常量 指定布局在南方位置
public static final String SOUTH  = "South";
//常量 指定布局在东方位置
public static final String EAST   = "East";
//常量 指定布局在西方位置
public static final String WEST   = "West";
//常量 指定布局在中心位置
public static final String CENTER = "Center";
//初始化方法 默认无间距
public BorderLayout();
//初始化方法 hgap设置水平间距 vgap设置垂直间距
public BorderLayout(int hgap, int vgap);
//获取水平间距
public int getHgap();
//设置水平间距
public void setHgap(int hgap);
//获取垂直间距
public int getVgap();
//设置垂直间距
public void setVgap(int vgap);

除了上面的方法,布局管理器相关类中都实现了添加组件的方法,这些方法一般开发者是不需要调用到的,当向容器中添加组件时,容器会用其对应的布局管理器来调用这些方法进行布局。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏海说

8、单选按钮(JRadioButton)和复选框(JCheckBox)

单选按钮(JRadioButton)和复选框(JCheckBox)       实现一个单选按钮(或复选框),此按钮项可被选择或取消选择,并显示其状态。JRad...

21900
来自专栏向治洪

Markdown对应Yelee主题语法

概述 这里说的是Yelee主题的语法和原生语法是有些区别的;更多的基础语法可以到Cmd Markdown上面去查看;但是我觉得都会各有不同吧 注意这里说的不是真...

20460
来自专栏Pythonista

Golang之一个简单的聊天机器人

24220
来自专栏web

慕课网javascript 进阶篇 第九章 编程练习

13640
来自专栏天天

20171024

12330
来自专栏xingoo, 一个梦想做发明家的程序员

【前端开发系列】—— CSS3属性选择器总结

想想自己为什么要学CSS,作为一个开发过前端的人员来说,调试一个图片花了半天的时间,最后发现分隔符用错了,实在是一件很丢人的事情。因此,痛下决心来学习CSS,...

22270
来自专栏河湾欢儿的专栏

标签类型

标签类型 块 1.独占一行 2.支持所有样式 3.不设置宽度的时候,宽度撑满整个一行 内嵌 1.可以在一行显示 2.不支持宽高,不支持上下的mar...

11430
来自专栏柠檬先生

VUE 入门基础(9)

十一,深入响应式原理    声明响应式属性     由于Vue不允许动态添加根级响应式属性,所以你必须在初始化实例钱声明根级响应式属性,哪怕只有一个空值。 ...

23850
来自专栏别先生

JAVA学习Swing章节流布局管理器简单学习

package com.swing; import java.awt.Container; import java.awt.FlowLayout; impo...

22200
来自专栏HTML5学堂

如何修改alert样式

HTML5学堂:无论是PC还是移动端,系统自带alert样式总是让人感觉很丑陋,今天就教大家如何修改alert弹窗样式。 只能自定一个弹窗样式 首先必须明白的一...

48440

扫码关注云+社区

领取腾讯云代金券