java常用布局管理器

合集下载

第9章 布局管理器

第9章  布局管理器

第9章 布局管理器在第5章中,介绍了多种常用AWT 组件的使用,AWT 组件可用于用户图形界面的创建,但由于界面中不能使用绝对坐标,因此组件无法直接定位,必须使用布局管理器。

布局管理器可控制整个图形界面的空间布局,并严格限定其中各组件的相对位置,即使在不同的平台上运行,也能保证图形界面中组件排布的合理性,保证了组件的平台无关性。

Java 提供的布局管理器类型很多,它们分别采用不同的布局策略。

在默认状态下,各种容器组件都没有默认的布局管理器,如Panel 组件使用默认的FlowLayout 布局管理器,JPanel 组件则使用默认的BorderLayout 布局管理器,这种情况同样适用于容器组件的嵌套。

使用这些功能强大的布局管理器,用户可以很方便地设计出实用、美观的图形界面。

9.1 布局管理器一般传统的图形界面中,大都采用(x ,y )坐标方式,且大小及位置均需由设计者制定。

但这种方法的缺点就是在不同环境下(如不同的分辨率:由1024×768降为640×480)就有可能产生窗口画面超过显示区的困扰,如图9-1所示。

Java 为了解决这些问题,便以布局管理器(Layout Manager )来作为布局的代管人,使程序设计人员不必为这些琐碎的显示问题伤透脑筋。

布局管理器的功能包括设置计算容器的最佳和最小尺寸以及将容器中的组件大小及位置作合适的安排。

当用户调整应用软件窗口大小,或是改变分辨率时,其组件大小会被自动调整,即使在差异很大的分辨率环境下,布局管理器仍然发挥其功用。

下面介绍几种常用的布局管理器。

9.2 BorderLayout 布局管理器BorderLayout 布局管理器将整个窗口按方位分为5个部分:South ,North ,West ,East 和Center ,它是一种非常简单、实用的布局管理器,也是JBuilder X 为应用程序图形界面设置的默认布局管理器。

下面就通过一个示例来说明BorderLayout 布局管理器的使用方法,该实例将在图形界面中添加5个按钮。

布局管理器主要包括

布局管理器主要包括

布局管理器主要包括:FlowLayout,BorderLayout,GridLayout,CardLayout,GridBagLayout例3import java.awt.*;public class ExGui{private Frame f;private Button b1;private Button b2;public static void main(String args[]){ExGui that = new ExGui();that.go();}public void go(){f = new Frame("GUI example");f.setLayout(new FlowLayout());//设置布局管理器为FlowLayoutb1 = new Button("Press Me");//按钮上显示字符"Press Me"b2 = new Button("Don't Press Me");f.add(b1);f.add(b2);f.pack();//紧凑排列,其作用相当于setSize(),即让窗口尽量小,小到刚刚能够包容住b1、b2两个按钮f.setVisible(true);}}查看运行结果1. FlowLayoutFlowLayout 是Panel,Applet的缺省布局管理器。

其组件的放置规律是从上到下、从左到右进行放置,如果容器足够宽,第一个组件先添加到容器中第一行的最左边,后续的组件依次添加到上一个组件的右边,如果当前行已放置不下该组件,则放置到下一行的最左边。

构造方法主要下面几种:FlowLayout(FlowLayout.RIGHT,20,40);/*第一个参数表示组件的对齐方式,指组件在这一行中的位置是居中对齐、居右对齐还是居左对齐,第二个参数是组件之间的横向间隔,第三个参数是组件之间的纵向间隔,单位是象素。

JAVA基础:FlowLayout布局管理器

JAVA基础:FlowLayout布局管理器

在前⾯的例⼦中,使⽤到了FlowLayout布局管理器。

FlowLayout型布局管理器对容器中组件进⾏布局的⽅式是将组件逐个地安放在容器中的⼀⾏上。

⼀⾏放满后就另起⼀个新⾏。

FlowLayout有三种构造⽅法: public FlowLayout() public FlowLayout(int align) public F10wLayout(int align,int hgap,int vgap) 在默认情况下,FlowLayout将组件居中放置在容器的某⼀⾏上,如果不想采⽤这种居中对齐的⽅式,考试,⼤提⽰FlowLayout的构造⽅法中提供了⼀个对齐⽅式的可选项align。

使⽤该选项,可以将组件的对齐⽅式设定为左对齐或者右对齐。

align的可取值有FlowLayout.LEFT,FlowLayout.RIGHT和FlowLayout.CENTER三种形式,它们分别将组件对齐⽅式设定为左对齐、右对齐和居中,例如: new FlowLayout(FlowLayout.LEFT)这条语句创建了⼀个使⽤左对齐⽅式的FlowLayout的实例。

此外,FlowLayout的构造⽅法中还有⼀对可选项hgap和vgap,使⽤这对可选项可以设定组件的⽔平间距和垂直间距。

与其他布局管理器不同的是,FlowLayout布局管理器并不强⾏设定组件的⼤⼩,⽽是允许组件拥有它们⾃⼰所希望的尺⼨。

注意:每个组件都有⼀个getPreferredSize()⽅法,容器的布局管理器会调⽤这⼀⽅法取得每个组件希望的⼤⼩。

下⾯是⼏个使⽤setLayout()⽅法实现FlowLayout的例⼦: setLayout(new FlowLayout(FlowLayout.RIGHT,20,40)); setLayout(new FlowLayout(FlowLayout.LEFT)); setLayout(new FlowLayout());。

Java中的GUI框架对比选择最适合你的工具

Java中的GUI框架对比选择最适合你的工具

Java中的GUI框架对比选择最适合你的工具Java作为一种广泛使用的编程语言,提供了多种GUI框架供开发者选择。

这些框架各有特点和适用场景。

本文将对Java中常用的几个GUI框架进行对比,帮助你选择最适合你的工具。

一、SwingSwing是Java提供的最基本和最常用的GUI框架之一。

它提供了丰富的组件和布局管理器,可以轻松地创建各种复杂的用户界面。

Swing 的优点在于易学易用,它提供了大量的文档和示例程序,帮助开发者快速掌握和应用。

然而,Swing也有其局限性。

它的外观默认较为简陋,需要额外的工作来美化界面。

而且,在处理大量数据时,Swing的性能可能会受到影响。

因此,如果你需要创建高度定制化的用户界面或者处理大量数据,或许有其他更适合的选择。

二、JavaFXJavaFX是Oracle在Java 8中引入的新一代GUI框架。

相比于Swing,JavaFX提供了更现代化,更美观的用户界面设计。

它支持页面式布局,可以使用CSS进行界面样式的定制,同时还提供了丰富的动画和多媒体支持。

JavaFX还具有良好的跨平台性能,可以在不同操作系统下获得一致的用户体验。

它也能很好地集成到现有的Swing应用程序中,方便开发者逐步迁移。

然而,JavaFX在一些细节上还不够完善,文档和示例相对较少,对于初学者来说学习曲线可能较陡峭。

此外,JavaFX在某些方面的功能支持可能不及Swing,尤其是在一些特殊需求的场景下。

三、AWTAWT是Java最早提供的GUI框架,它直接使用了底层操作系统的原生组件。

AWT的优点在于性能较高,因为它充分利用了底层操作系统的原生支持。

然而,AWT的外观和功能相对较为有限,对于一些复杂的界面和布局需求,可能支持不够理想。

另外,AWT仅支持部分平台,可能存在跨平台性能方面的问题。

四、Java SWTSWT是一种由Eclipse基金会开发并维护的GUI框架。

它利用了操作系统的底层图形系统,提供了更接近原生的界面和更好的性能。

布局窗口实验报告

布局窗口实验报告

一、实验目的通过本次实验,掌握Java Swing框架中常用的布局管理器,如FlowLayout、BorderLayout、GridLayout、GridBagLayout等,并学会如何使用这些布局管理器对窗口进行合理布局,提高GUI应用程序的界面设计能力。

二、实验环境1. 开发工具:Eclipse2. 开发语言:Java3. 环境配置:Java Development Kit(JDK)版本为1.8三、实验内容1. 流式布局(FlowLayout)2. 边界布局(BorderLayout)3. 网格布局(GridLayout)4. 网格袋布局(GridBagLayout)四、实验步骤1. 流式布局(FlowLayout)(1)创建一个窗口,并设置窗口标题为“FlowLayout”。

(2)在窗口中添加四个按钮,分别为“Button1”、“Button2”、“Button3”和“Button4”。

(3)设置窗口的布局管理器为FlowLayout。

(4)运行程序,观察窗口布局效果。

2. 边界布局(BorderLayout)(1)创建一个窗口,并设置窗口标题为“BorderLayout”。

(2)在窗口中添加四个标签,分别为“North”、“South”、“East”和“West”。

(3)设置窗口的布局管理器为BorderLayout。

(4)运行程序,观察窗口布局效果。

3. 网格布局(GridLayout)(1)创建一个窗口,并设置窗口标题为“GridLayout”。

(2)在窗口中添加四个按钮,分别为“Button1”、“Button2”、“Button3”和“Button4”。

(3)设置窗口的布局管理器为GridLayout,并设置每行和每列的组件数量为2。

(4)运行程序,观察窗口布局效果。

4. 网格袋布局(GridBagLayout)(1)创建一个窗口,并设置窗口标题为“GridBagLayout”。

浅谈Java布局管理器及其应用

浅谈Java布局管理器及其应用

Ca ao tFo au 等 。 图 1中 每 一 个 容 器 都 有 r y u、lwLo t L Ly u 属性 ,可 以在 对象 监 视 器 中 定义 布局 管 理 器 ao t
类型 , 如图 2 所示 。 2 Y ao t . X Ly u 布局管理器 1 这个布局管理器与其他开发工具 的窗体设计器
1112或 支 持 它 们 的 G 开 发 T. 如 : ule、 .、. UI 具 j i r b d
VsaAg r aa等等 。 i l ef v u oI 现在 就 以 fule 开 发 T具 bi r d 详 细说 明 AWT 中提 供 的 多种 布局 管 理 器 ,如 XY—
La o 、 r e La out fd y y ut Bo d r y G i La out rd g y G i Ba La out
工具 , 解决硬性设置组件而造成布局混乱的问题 , 这 就是布局管理器 (ao t ngr Ly u Maae 。 ) 在整 个 A T中 , 基 本 的关 系 就是 构 件 、 W 最 容器
维普资讯



Ja a 布局管理 v
新疆 天择数码科 技有 限公


本 文 阐述 了Jv aa中的 布局 管 理 器在 开发 跨 平 台语 言的 重要 性 , 细 介 绍 了布局 管 理 详
器 的类 型 、 点及 其使 用方 法 , 特 列举 了 Jv 布 局 管理 器应 用 实例 。 aa
维普资讯
组 件 名称 , 回值 Байду номын сангаас C mp nn。 返 o o et
下 面我们 举 个 例子 看 如 何使 用 B r eLy u 布 od r ao t

borderlayout用法

borderlayout用法

borderlayout用法BorderLayout是Java中常用的布局管理器之一,它将容器分为5个区域:北、南、东、西和中心。

在使用BorderLayout时,可以将组件添加到不同的区域中,从而实现灵活的布局效果。

具体用法如下:1. 创建一个JFrame或JPanel等容器组件,并设置其布局管理器为BorderLayout。

2. 使用add方法将需要布局的组件添加到容器中,并指定其所在的区域。

例如:frame.add(new JButton('North'), BorderLayout.NORTH);frame.add(new JButton('South'), BorderLayout.SOUTH);frame.add(new JButton('East'), BorderLayout.EAST);frame.add(new JButton('West'), BorderLayout.WEST);frame.add(new JButton('Center'), BorderLayout.CENTER);3. 可以使用setHgap和setVgap方法设置组件之间的水平和垂直间距。

4. 如果一个区域中添加了多个组件,则它们将按照添加的顺序依次排列。

5. 如果某个区域没有添加任何组件,则该区域将不会显示出来。

6. 可以使用remove方法将已添加的组件从容器中移除。

7. 可以使用setPreferredSize方法设置组件的首选大小,以便更好地控制布局效果。

总之,BorderLayout是一种简单易用的布局管理器,适用于各种大小和形状的容器组件,可以轻松实现各种布局效果。

java flowlayout用法

java flowlayout用法

java flowlayout用法Java中的FlowLayout布局管理器被广泛用于创建简单的用户界面。

FlowLayout是一种简单而灵活的布局管理器,它将组件按照给定的顺序一次排列在一行或一列上。

在这篇文章中,我们将深入探讨FlowLayout的使用和用法,并提供一些例子来帮助你更好地理解它。

第一部分:什么是FlowLayoutFlowLayout是Java的布局管理器之一,它可以帮助我们轻松地安排和管理用户界面中的组件。

它提供了一种简单的方法来按照水平或垂直方向排列组件,这取决于我们如何选择参数。

我们可以使用FlowLayout来创建任何大小和形状的界面,无论是桌面应用程序还是移动应用程序。

第二部分:FlowLayout的基本用法FlowLayout的基本用法非常简单。

我们可以通过创建一个FlowLayout的实例来启用FlowLayout管理器。

例如,下面的代码将创建一个具有默认参数的FlowLayout布局管理器:FlowLayout layout = new FlowLayout();然后,我们可以将这个布局管理器应用于窗口、面板或任何其他容器。

例如,假设我们有一个JFrame对象,我们可以通过调用其setLayout()方法将FlowLayout应用到该窗口:JFrame frame = new JFrame();frame.setLayout(layout);接下来,我们可以将组件添加到窗口中,并它们将按照FlowLayout的规定进行排列。

默认情况下,组件将从左到右依次排列,直到达到窗口的边界,然后换行继续排列。

第三部分:FlowLayout的参数FlowLayout提供了一些参数来定义组件的排列方式。

其中最常用的参数有三个:alignment、hgap和vgap。

alignment参数用于指定组件的对齐方式。

它可以具有三个值:FlowLayout.LEFT、FlowLayout.CENTER和FlowLayout.RIGHT。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
主要内容
Java GUI布局管理概述 FlowLayout顺序排放组件 BorderLayout边界版面布局 GridLayout网格版面布局 用面板JPanel进行界面的分块布局
Java GUI布局管理概述
布局管理意义 在Java中,组件在界面上的布局由布局管理器来管理。如: Container cc=getContentPane(); cc.setLayout(new FlowLayout()); cc.add(···); 由此可见,容器的操作处理上将界面设计分成两个步骤: 通过 setLayout 方法将布局的管理交给专门的布局管理器类来完成。 通过 add 方法将将其他组件加入其中 每个容器都有一个缺省的布局管理器,用来实现布局管理。 Container的缺省管理器是 BorderLayout。 大多数的布局管理器在AWT包中,有一小部分在S小,组件的排列方式不变,组件之间的行列间距保持不变 所有组件的宽度和高度相同,其大小会随窗口的尺寸而相应改变
用面板JPanel进行界面的分块布局
JPanel概述 JPanel继承了Jcomponent,它是 一个 Swing 组件,而JComponent继承 了AWT包中的 Container,所以JPanel 是一个容器组件,在JPanel中可容放 其他组件。 JFrame、其上的内容窗格和 JPanel 的关系如图:
FlowLayout布局特点:
改变窗口的大小,那么组件的排列方式也会跟着变化 组件的顺序和组件的尺寸是确定的,不随窗口而改变
BorderLayout边界版面布局
BorderLayout类概述
这是Container对象默认的布局方式且全部居中。
构造方法
public BorderLayout() public BorderLayout(int hgap,int vgap) 说明:此时需在add方法中加上确定边界位置的参数,不加参数组件会叠 加在一起。 如:add(new JButton(“North”) , BorderLayout.NORTH);
常用的静态成员变量
NORTH:北边 SOUTH:南边 EAST:东边 WEST:西边 CENTER:居中
布局特点 :

改变窗口的大小,组件的排列方式保持不变 组件的大小会随窗口而改变 NORTH与SOUTH有确定的高度,WEST与EAST有确定的宽度
GridLayout网格版面布局
FlowLayout顺序排放组件
FlowLayout概述
根据显示区域的大小,把组件按照从左到右的顺序放置,如果一行 放不下,那么就转下一行。 构造方法 public FlowLayout() public FlowLayout(int align) public FlowLayout(int align,int hgap,int vgap) align:排放方式,常用的有: FlowLayout.CENTER:中心对齐(默认) FlowLayout.LEFT:左对齐 FlowLayout.RIGHT:右对齐
JPanel面板的构造方法
public JPanel() :创建一个FlowLayout布局的面板。 public JPanel(LayoutManger layout):创建一个指定布局的面板。
如:JPanel p = new JPanel(new BorderLayout());
布局方式
把组件放置在类似表格的矩形网格中。 预先需设定网络的行数和列数。 构造方法 public GridLayout()创建单行布局网格 public GridLayout(int rows,int cols)创建指定行列的布局网格 如果给定行列数较大,网格数多于按钮数,会自动进行列调整 public GridLayout(int rows,int cols,int hgap,int vgap) 创建指定行列,并指定行列间距的布局网格(行数、列数、行间距、列间距)
相关文档
最新文档