Module  java.desktop
软件包  javax.swing.text

Class CompositeView

    • 构造方法详细信息

      • CompositeView

        public CompositeView​(Element elem)
        为给定的元素构造一个 CompositeView
        参数
        elem - 这个视图负责的元素
    • 方法详细信息

      • setParent

        public void setParent​(View parent)
        设置视图的父级。 如果此视图尚不具有子loadChildren则会重新实现此功能以提供超类行为以及调用loadChildren方法。 孩子不应该加载在构造函数中,因为设置父Container的行为可能会导致他们尝试搜索层次结构(例如获取主机Container )。 如果此视图具有子视图(视图正从视图层次结构中的一个位置移动到另一个视图),则不会调用loadChildren方法。
        重写:
        setParentView
        参数
        parent - 视图的父级,如果没有, null
      • getViewCount

        public int getViewCount​()
        返回此视图的子视图数。
        重写:
        getViewCountView
        结果
        视图数> = 0
        另请参见:
        getView(int)
      • getView

        public View getView​(int n)
        返回此容器中的第n个视图。
        重写:
        getViewView
        参数
        n - 所需视图的编号,> = 0 && <getViewCount()
        结果
        索引号为 n
      • replace

        public void replace​(int offset,
                            int length,
                            View[] views)
        代替子视图。 如果没有任何意见删除这个行为作为插入。 如果没有任何视图添加此行为作为删除。 正在删除的视图将使父级设置为null ,并将它们的内部引用移除,以便它们可能被垃圾回收。
        重写:
        replaceView
        参数
        offset - 将子视图的起始索引插入新视图; > = 0和<= getViewCount
        length - 要删除的现有子视图数; 这应该是一个值> = 0和<=(getViewCount() - offset)
        views - 子视图添加; 这个值可以是null来表示没有添加小孩(有用的删除)
      • getChildAllocation

        public Shape getChildAllocation​(int index,
                                        Shape a)
        获取给定子视图的分配。 这可以找出各种视图所在的位置。
        重写:
        getChildAllocationView
        参数
        index - 小孩的索引> = 0 && <getViewCount()
        a - 这个视图的分配
        结果
        分配给孩子
      • getViewIndex

        public int getViewIndex​(int pos,
                                Position.Bias b)
        返回表示模型中给定位置的子视图索引。 这被实现为向后兼容性调用getViewIndexByPosition方法。
        重写:
        getViewIndexView
        参数
        pos - 位置> = 0
        b - 偏见
        结果
        表示给定位置的视图的索引,如果没有视图表示该位置,则为-1
        从以下版本开始:
        1.3
      • isBefore

        protected abstract boolean isBefore​(int x,
                                            int y,
                                            Rectangle alloc)
        测试点是否在矩形范围之前。
        参数
        x - X坐标> = 0
        y - Y坐标> = 0
        alloc - 矩形
        结果
        如果点在指定范围之前,则为true
      • isAfter

        protected abstract boolean isAfter​(int x,
                                           int y,
                                           Rectangle alloc)
        测试一个点是否在矩形范围之后。
        参数
        x - X坐标> = 0
        y - Y坐标> = 0
        alloc - 矩形
        结果
        如果点在指定范围之后,则为true
      • getViewAtPoint

        protected abstract View getViewAtPoint​(int x,
                                               int y,
                                               Rectangle alloc)
        在给定坐标处获取子视图。
        参数
        x - X坐标> = 0
        y - Y坐标> = 0
        alloc - 父母在入境时的分配,应在退出时更改为小孩的分配
        结果
        孩子观
      • childAllocation

        protected abstract void childAllocation​(int index,
                                                Rectangle a)
        返回给定子项的分配。
        参数
        index - 小孩的索引> = 0 && <getViewCount()
        a - 在条目分配到框内部,并在退出时在索引 a视图。
      • getViewAtPosition

        protected View getViewAtPosition​(int pos,
                                         Rectangle a)
        获取代表模型中给定位置的子视图。 这是为了在每个子元素有子视图的情况下获取视图。
        参数
        pos - 位置> = 0
        a - 进入箱内部的分配以及包含退出位置的视图分配
        结果
        表示给定位置的视图,如果没有一个, null
      • getViewIndexAtPosition

        protected int getViewIndexAtPosition​(int pos)
        获取代表模型中给定位置的子视图索引。 这是为了在每个子元素有子视图的情况下获取视图。
        参数
        pos - 位置> = 0
        结果
        表示给定位置的视图的索引,如果没有视图表示该位置,则为-1
      • getInsideAllocation

        protected Rectangle getInsideAllocation​(Shape a)
        将给予视图的不可变分配转换为表示内部分配的可变分配(即,删除顶,左,底和右插入的给定分配的边界,预期返回值将进一步变更为表示对子视图的分配,实现为重用实例变量,以避免创建过多的矩形。通常,调用此方法的结果将被馈送到 childAllocation方法。
        参数
        a - 给予视图的分配
        结果
        表示视图内部的分配在所有边距全部被删除之后; 如果给定的分配为null ,则返回值为null
      • setParagraphInsets

        protected void setParagraphInsets​(AttributeSet attr)
        从给定属性中指定的段落属性设置插值。
        参数
        attr - 属性
      • setInsets

        protected void setInsets​(short top,
                                 short left,
                                 short bottom,
                                 short right)
        设置视图的插值。
        参数
        top - 顶部插图> = 0
        left - 左插入> = 0
        bottom - 底部插图> = 0
        right - 正确的插图> = 0
      • getLeftInset

        protected short getLeftInset​()
        得到左边的插图。
        结果
        插图> = 0
      • getRightInset

        protected short getRightInset​()
        获取正确的插图。
        结果
        插图> = 0
      • getTopInset

        protected short getTopInset​()
        获得顶级插图。
        结果
        插图> = 0
      • getBottomInset

        protected short getBottomInset​()
        获取底部插图。
        结果
        插图> = 0
      • flipEastAndWestAtEnds

        protected boolean flipEastAndWestAtEnds​(int position,
                                                Position.Bias bias)
        确定下一个视图放在哪个方向。 考虑索引号为View 通常, View ,以便EAST的View将处于索引n + 1,而WEST的View将处于索引n-1。在某些情况下,例如具有双向文本,EAST的View可能不在索引n + 1,而是索引n-1,或者WEST的View不在索引n-1,而是索引n + 1。在这种情况下,方法将返回true,表示View以降序排列。

        这无条件地返回false,如果有可能以降序排列View ,子类应该覆盖此方法。

        参数
        position - 进入模型的位置
        bias - Position.Bias.ForwardPosition.Bias.Backward
        结果