模块 java.desktop

类 FlowView.FlowStrategy

java.lang.Object
javax.swing.text.FlowView.FlowStrategy
封闭类:
FlowView

public static class FlowView.FlowStrategy extends Object
维持流的物理形式的策略。默认实现是完全无状态的,如果布局在给定的 FlowView 上无效,则重新计算整个流程。替代策略可以通过子类化来实现,并且可以对布局或替代破坏行为执行增量修复。
自从:
1.3
  • 构造方法详细信息

    • FlowStrategy

      public FlowStrategy()
      构造一个 FlowStrategy
  • 方法详情

    • insertUpdate

      public void insertUpdate(FlowView  fv, DocumentEvent  e, Rectangle  alloc)
      通知某些内容已插入文档中给定流视图负责的位置。该策略应更新适当的更改区域(这取决于用于修复的策略)。
      参数:
      fv - 流视图
      e - 来自关联文档的更改信息
      alloc - insets内部视图的当前分配。如果视图尚未显示,则此值为空。
      参见:
    • removeUpdate

      public void removeUpdate(FlowView  fv, DocumentEvent  e, Rectangle  alloc)
      通知某些内容已从给定流视图负责的位置的文档中删除。
      参数:
      fv - 流视图
      e - 来自关联文档的更改信息
      alloc - insets内部视图的当前分配。
      参见:
    • changedUpdate

      public void changedUpdate(FlowView  fv, DocumentEvent  e, Rectangle  alloc)
      从文档发出通知,通知该视图负责的位置的属性已更改。
      参数:
      fv - 包含更改的 FlowView
      e - DocumentEvent 描述对文档所做的更改
      alloc - 视图范围
      参见:
    • getLogicalView

      protected View  getLogicalView(FlowView  fv)
      此方法使流策略可以访问 FlowView 的逻辑视图。
      参数:
      fv - 流视图
      返回:
      FlowView 的逻辑视图
    • layout

      public void layout(FlowView  fv)
      更新给定 FlowView 上的流。默认情况下,这会导致重建所有行(子视图)以匹配每一行的给定约束。这由 FlowView.layout 调用以更新流中的子视图。
      参数:
      fv - 回流视图
    • layoutRow

      protected int layoutRow(FlowView  fv, int rowIndex, int pos)
      创建一行适合该行布局跨度的视图。这是由布局方法调用的。这是通过重复调用 createView 方法来填充行,直到可用跨度用尽、遇到强制中断或 createView 方法返回 null。如果剩余跨度已用完,将调用 adjustRow 方法对行进行调整以尝试使其适合给定跨度。
      参数:
      fv - 流视图
      rowIndex - 要填充视图的行的索引。假定该行在输入时为空。
      pos - 此视图元素的子元素中的当前位置,从中开始。
      返回:
      开始下一行的位置
    • adjustRow

      protected void adjustRow(FlowView  fv, int rowIndex, int desiredSpan, int x)
      如果可能,调整给定的行以适应布局范围。默认情况下,这将尝试找到最接近行尾的最高断裂重量。如果遇到强制中断,中断将定位在那里。
      参数:
      fv - 流视图
      rowIndex - 要调整到当前布局跨度的行。
      desiredSpan - 当前布局跨度 >= 0
      x - r 开始的位置。
    • createView

      protected View  createView(FlowView  fv, int startOffset, int spanLeft, int rowIndex)
      创建可用于表示流的当前部分的视图。这可以是逻辑视图中的整个视图,也可以是逻辑视图的片段。
      参数:
      fv - 保持流程的视图
      startOffset - 正在创建的视图的起始位置
      spanLeft - 左跨度的关于填充行
      rowIndex - 视图将被放置到的行
      返回:
      可用于表示流的当前部分的视图