Java GUI进阶之流式布局管理器FlowLayout专项精讲

Java GUI

GUI的全称是Graphical User Interface,即图形用户界面,是应用程序提供给用户操作的图形界面,包括窗口,菜单,按钮,工具栏和其他各种图形界面元素。

AWT概述

AWT是用于创建图形用户界面的一个工具包,提供了一些用于实现图形界面的组件,,在JDK中针对每个组件都提供了对应的Java类,这些类都位于Java.awt包。

AWT中的继承关系

Java GUI进阶之流式布局管理器FlowLayout专项精讲_第1张图片

1、Windows

Windows中有两个子类,Frame类和Dialog类,Frame类用于创建一个具有标题的框架窗口,作为程序的主界面,Dialog类用于创建一个对话框,实现与用户的信息交互。

2、Panel

Panel是一个容器,不能单独存在,只能存在于Windows及其子类中,一个Panel对象代表了一个长方形的区域,在这个区域中可以容纳其他的组件,

package AWT;
 import java.awt.*;
 public class GeZi {
     public static void main(String[] args) {
         Frame f=new Frame("我的世界!");
         //设置窗体的宽和高
         f.setSize(600,300);
         //设置窗体在屏幕中所处的位置(参考是左上角坐标)
         f.setLocation(600,200);
         f.setVisible(true);
     }
 }

Java GUI进阶之流式布局管理器FlowLayout专项精讲_第2张图片

布局管器

组件在容器中的位置和尺寸是由布局管理器来决定的。在java.awt包中提供了5种布局管理器,分别是FlowLayout(流式布局管理器),BorderLayout(边界布局管理器),GirdLayout(网格布局管理器),GirdBagLayout(网格包布局管理器),CardLayout(卡片布局管理器),每个容器在创建时都会默认使用一种布局管理器,在程序中可以通过调用容器对象的setLayout()方法设置布局管理器,通过布局管理器来自动进行组建的布局管理。

FlowLayout(流式布局管理器)

在这种布局方式下,容器会将组件按照添加顺序从左向右放置。当达到容器的边界时,会自动将组件放到下一行的开始位置,可以将组件设置成左对齐,居中对齐或右对齐,FlowLayout有三个构造方法。

 FlowLayout()//组件默认居中对齐,水平,垂直间距离为5个单位
     FlowLayout(int align)//指定组件相对于容器的对齐方式,水平,垂直间距默认5个单位
     FlowLayout(int align,int hgap,int vgap)//指定组件的对齐方式和水平,垂直间距
 package AWT;
 import java.awt.*;
 public class LuiSi {
     public static void main(String[] args) {
         final Frame f=new Frame("FlowLayout");
         //设置布局管理器为FlowLayout,所有组件左对齐,水平间距为20,垂直间距为30
         f.setLayout(new FlowLayout(FlowLayout.LEFT,20,30));
         f.setSize(220,300);
         f.setLocation(300,200);
         f.add(new Button("第1个按钮"));
         f.add(new Button("第2个按钮"));
         f.add(new Button("第3个按钮"));
         f.add(new Button("第4个按钮"));
         f.add(new Button("第5个按钮"));
         f.add(new Button("第6个按钮"));
         f.setVisible(true);
     }
 }

Java GUI进阶之流式布局管理器FlowLayout专项精讲_第3张图片 

到此这篇关于Java GUI进阶之流式布局管理器FlowLayout专项精讲的文章就介绍到这了,更多相关Java FlowLayout内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Java GUI进阶之流式布局管理器FlowLayout专项精讲)