Module  java.desktop
软件包  java.awt

Class FlowLayout

  • All Implemented Interfaces:
    LayoutManagerSerializable


    public class FlowLayout
    extends Object
    implements LayoutManager, Serializable
    流程布局将组件布置在定向流中,与段落中的文本行类似。 流动方向由容器的componentOrientation属性确定,可以是两个值之一:
    • ComponentOrientation.LEFT_TO_RIGHT
    • ComponentOrientation.RIGHT_TO_LEFT
    流程布局通常用于布置面板中的按钮。 它可以水平排列按钮,直到不再有按钮在同一行上。 行对齐由align属性确定。 可能的值是:

    例如,下图显示了使用流布局管理器(其默认布局管理器)定位三个按钮的小程序:

    三个按钮的布局图形

    这是applet的代码:


     import java.awt.*;
     import java.applet.Applet;
    
     public class myButtons extends Applet {
         Button button1, button2, button3;
         public void init() {
             button1 = new Button("Ok");
             button2 = new Button("Open");
             button3 = new Button("Close");
             add(button1);
             add(button2);
             add(button3);
         }
     }
     

    流程布局允许每个组件承担其自然(优选)大小。

    从以下版本开始:
    1.0
    另请参见:
    ComponentOrientationSerialized Form
    • Field Summary

      Fields  
      Modifier and Type Field 描述
      static int CENTER
      该值表示每行的组件应该居中。
      static int LEADING
      该值表示组件的每一行应该对齐到容器方向的前端,例如从左到右的方向向左。
      static int LEFT
      该值表示每一行的组件应为左对齐。
      static int RIGHT
      该值表示组件的每一行都应该是右对齐的。
      static int TRAILING
      该值表示组件的每一行应该对齐到容器方向的后端,例如从左到右的方向向右。
    • 构造方法摘要

      构造方法  
      Constructor 描述
      FlowLayout​()
      构造一个新的 FlowLayout ,具有中心对齐和默认的5单位水平和垂直间隙。
      FlowLayout​(int align)
      构造新的 FlowLayout具有指定的对齐和默认的5单位水平和垂直间隙。
      FlowLayout​(int align, int hgap, int vgap)
      创建一个新的流程布局管理器,具有指示的对齐方式和指示的水平和垂直间距。
    • 构造方法详细信息

      • FlowLayout

        public FlowLayout​()
        构造一个新的 FlowLayout ,其中心对齐和默认的5单位水平和垂直间隙。
      • FlowLayout

        public FlowLayout​(int align)
        构造一个新的FlowLayout具有指定的对齐和默认的5单位水平和垂直间隙。 取向参数的值必须是一个FlowLayout.LEFTFlowLayout.RIGHTFlowLayout.CENTERFlowLayout.LEADING ,或FlowLayout.TRAILING
        参数
        align - 对齐值
      • FlowLayout

        public FlowLayout​(int align,
                          int hgap,
                          int vgap)
        创建一个新的流程布局管理器,具有指示的对齐方式和指示的水平和垂直间距。

        取向参数的值必须是一个FlowLayout.LEFTFlowLayout.RIGHTFlowLayout.CENTERFlowLayout.LEADING ,或FlowLayout.TRAILING

        参数
        align - 对齐值
        hgap - 组件之间和组件之间的水平间隙和 Container的边界
        vgap - 组件之间和组件之间的垂直间隙以及 Container的边框
    • 方法详细信息

      • getAlignment

        public int getAlignment​()
        获取此布局的对齐方式。 可能的值是FlowLayout.LEFTFlowLayout.RIGHTFlowLayout.CENTERFlowLayout.LEADING ,或FlowLayout.TRAILING
        结果
        此布局的对齐值
        从以下版本开始:
        1.1
        另请参见:
        setAlignment(int)
      • setAlignment

        public void setAlignment​(int align)
        设置此布局的对齐方式。 可能的值是
        • FlowLayout.LEFT
        • FlowLayout.RIGHT
        • FlowLayout.CENTER
        • FlowLayout.LEADING
        • FlowLayout.TRAILING
        参数
        align - 上面显示的对齐值之一
        从以下版本开始:
        1.1
        另请参见:
        getAlignment()
      • getHgap

        public int getHgap​()
        获取组件之间以及组件之间的水平间隙以及 Container的边框
        结果
        组件之间的水平间隙和组件之间的边界和 Container的边界
        从以下版本开始:
        1.1
        另请参见:
        setHgap(int)
      • setHgap

        public void setHgap​(int hgap)
        设置组件之间以及组件之间的水平间隙和 Container的边框。
        参数
        hgap - 组件之间和组件之间的水平间隙和 Container的边界
        从以下版本开始:
        1.1
        另请参见:
        getHgap()
      • getVgap

        public int getVgap​()
        获得组件之间以及组件之间的垂直间隙和 Container的边框。
        结果
        组件之间和组件之间的垂直间隙和边框 Container
        从以下版本开始:
        1.1
        另请参见:
        setVgap(int)
      • setVgap

        public void setVgap​(int vgap)
        设置组件之间以及组件与 Container的边框之间的垂直间距。
        参数
        vgap - 组件之间和组件之间的垂直间隙和边框 Container
        从以下版本开始:
        1.1
        另请参见:
        getVgap()
      • setAlignOnBaseline

        public void setAlignOnBaseline​(boolean alignOnBaseline)
        组件是否应沿其基线垂直排列。 没有基线的组件将居中。 默认值为false。
        参数
        alignOnBaseline是否应在其基线上垂直对齐
        从以下版本开始:
        1.6
      • getAlignOnBaseline

        public boolean getAlignOnBaseline​()
        如果组件沿其基线垂直对齐,则返回true。 默认值为false。
        结果
        如果组件沿其基线垂直对准,则为真
        从以下版本开始:
        1.6
      • addLayoutComponent

        public void addLayoutComponent​(String name,
                                       Component comp)
        将指定的组件添加到布局。 本课不使用
        Specified by:
        addLayoutComponent在接口 LayoutManager
        参数
        name - 组件的名称
        comp - 要添加的组件
      • layoutContainer

        public void layoutContainer​(Container target)
        放出容器。 该方法通过重新整形目标容器中的组件,使每个可见组件采用其首选大小,以满足此FlowLayout对象的对齐。
        Specified by:
        layoutContainer在接口 LayoutManager
        参数
        target - 正在布置的指定组件
        另请参见:
        ContainerContainer.doLayout()
      • toString

        public String toString​()
        返回此 FlowLayout对象及其值的字符串表示形式。
        重写:
        toString中的 Object
        结果
        此布局的字符串表示形式