- java.lang.Object
-
- javax.swing.text.View
-
- javax.swing.text.CompositeView
-
- javax.swing.text.BoxView
-
- javax.swing.text.html.BlockView
-
- All Implemented Interfaces:
-
SwingConstants
- 已知直接子类:
-
ListView
public class BlockView extends BoxView
使用CSS规范显示块(作为框)的视图实现。
-
-
Field Summary
-
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
Fields inherited from class javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
-
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 protected SizeRequirements
calculateMajorAxisRequirements(int axis, SizeRequirements r)
沿着长轴计算块的要求(即轴与其一起的瓦片)。protected SizeRequirements
calculateMinorAxisRequirements(int axis, SizeRequirements r)
计算沿着短轴的块的要求(即,与轴一起垂直于轴的轴以及瓦片)。void
changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
在该视图负责的位置向文档发出属性更改的通知。float
getAlignment(int axis)
获得对齐。AttributeSet
getAttributes()
获取渲染时要使用的属性。float
getMaximumSpan(int axis)
确定沿着轴的该视图的最大跨度。float
getMinimumSpan(int axis)
确定此视图沿轴的最小跨度。float
getPreferredSpan(int axis)
确定沿着轴的此视图的首选跨度。int
getResizeWeight(int axis)
获得调整重量。protected StyleSheet
getStyleSheet()
方便的方法来获取StyleSheet。protected void
layoutMinorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
执行框的短轴的布局(即与其所表示的轴正交的轴)。void
paint(Graphics g, Shape allocation)
渲染使用给定的渲染表面和该表面上的区域。void
setParent(View parent)
建立此视图的父视图。protected void
setPropertiesFromAttributes()
更新来自属性的任何缓存值。-
Methods inherited from class javax.swing.text.BoxView
baselineLayout, baselineRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAxis, getChildAllocation, getHeight, getOffset, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, layoutMajorAxis, modelToView, paintChild, preferenceChanged, replace, setAxis, setSize, viewToModel
-
Methods inherited from class javax.swing.text.CompositeView
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, getViewIndexAtPosition, loadChildren, modelToView, setInsets, setParagraphInsets
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from class javax.swing.text.View
append, breakView, createFragment, forwardUpdateToView, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, insertUpdate, isVisible, modelToView, remove, removeAll, removeUpdate, updateChildren, updateLayout, viewToModel
-
-
-
-
构造方法详细信息
-
BlockView
public BlockView(Element elem, int axis)
创建一个代表html框的新视图。 这可以用于许多元素。- 参数
-
elem
- 为其创建视图的元素 -
axis
- View.X_AXIS或View.Y_AXIS
-
-
方法详细信息
-
setParent
public void setParent(View parent)
建立此视图的父视图。 如果父视图正常工作,这可以保证在任何其他方法之前被调用。这被实现为转发到超类,以及调用
setPropertiesFromAttributes()
方法从css属性设置段属性。 此时通话是为了确保通过父母视图属性向上解决的能力。- 重写:
-
setParent
在CompositeView
- 参数
-
parent
- 新的父项,如果视图从之前添加到的父项中删除,则为null
-
calculateMajorAxisRequirements
protected SizeRequirements calculateMajorAxisRequirements(int axis, SizeRequirements r)
沿着长轴计算块的要求(即轴与其一起的瓦片)。 这是为了提供超类行为而实现的,然后如果CSS宽度或高度属性被指定并适用于轴,则进行调整。- 重写:
-
calculateMajorAxisRequirements
在BoxView
- 参数
-
axis
- 正在研究的轴 -
r
-SizeRequirements
对象; 如果null
将创建一个 - 结果
-
新初始化的
SizeRequirements
对象 - 另请参见:
-
SizeRequirements
-
calculateMinorAxisRequirements
protected SizeRequirements calculateMinorAxisRequirements(int axis, SizeRequirements r)
计算沿着短轴的块的要求(即,与轴一起垂直于轴的轴以及瓦片)。 这是为了提供超类行为而实现的,然后如果CSS宽度或高度属性被指定并适用于轴,则进行调整。- 重写:
-
calculateMinorAxisRequirements
在BoxView
- 参数
-
axis
- 正在研究的轴 -
r
-SizeRequirements
对象; 如果null
将创建一个 - 结果
-
新初始化的
SizeRequirements
对象 - 另请参见:
-
SizeRequirements
-
layoutMinorAxis
protected void layoutMinorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
执行框的短轴的布局(即与其所表示的轴正交的轴)。 布局的结果(每个孩子的偏移量和跨度)被放置在给定的数组中,这些数组表示沿着短轴的子项的分配。- 重写:
-
layoutMinorAxis
在BoxView
- 参数
-
targetSpan
- 给予视图的总跨度,用于布局孩子。 -
axis
- 轴被axis
-
offsets
- 每个子视图的视图原点的偏移量; 这是一个返回值并通过执行此方法填写 -
spans
- 每个子视图的跨度; 这是一个返回值并通过执行此方法填写
-
paint
public void paint(Graphics g, Shape allocation)
渲染使用给定的渲染表面和该表面上的区域。 这是为了委托给css框画家,在内部绘制边框和背景。- 重写:
-
paint
在BoxView
- 参数
-
g
- 要使用的渲染表面 -
allocation
- 要分配的区域 - 另请参见:
-
View.paint(java.awt.Graphics, java.awt.Shape)
-
getAttributes
public AttributeSet getAttributes()
获取渲染时要使用的属性。 这是为了将模型中指定的属性与StyleSheet进行复用。- 重写:
-
getAttributes
在View
- 结果
- 渲染时要使用的属性
-
getResizeWeight
public int getResizeWeight(int axis)
获得调整重量。- 重写:
-
getResizeWeight
在BoxView
- 参数
-
axis
- 可以是X_AXIS或Y_AXIS - 结果
- 重量
- 异常
-
IllegalArgumentException
- 对于无效轴
-
getAlignment
public float getAlignment(int axis)
获得对齐。- 重写:
-
getAlignment
在BoxView
- 参数
-
axis
- 可以是X_AXIS或Y_AXIS - 结果
- 对齐
-
changedUpdate
public void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
描述从类别复制View
在该视图负责的位置向文档发出属性更改的通知。 为了减少子类的负担,此功能扩展到子类可以重新实现的以下调用中:- 如果对该视图负责的元素有任何更改,则调用
updateChildren
。 如果此视图具有表示子元素的子视图,则此方法应执行必要的任何操作,以确保子视图正确表示模型。 - 调用
forwardUpdate
将DocumentEvent转发到适当的子视图。 -
updateLayout
被称为给予视图修复其布局,重新安排布局或不做任何事情的机会。
- 重写:
-
changedUpdate
在View
- 参数
-
changes
- 相关文件的更改信息 -
a
- 视图的当前分配 -
f
- 工厂使用重建如果视图有孩子 - 另请参见:
-
View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
- 如果对该视图负责的元素有任何更改,则调用
-
getPreferredSpan
public float getPreferredSpan(int axis)
确定沿着轴的此视图的首选跨度。- 重写:
-
getPreferredSpan
在BoxView
- 参数
-
axis
- 可以是View.X_AXIS
或View.Y_AXIS
- 结果
- 视图想要呈现为> = 0的跨度; 通常,该视图被告知要呈现返回的跨度,尽管不能保证; 父母可以选择调整大小或打破视图
- 异常
-
IllegalArgumentException
- 对于无效的轴类型 - 另请参见:
-
View.getPreferredSpan(int)
-
getMinimumSpan
public float getMinimumSpan(int axis)
确定此视图沿轴的最小跨度。- 重写:
-
getMinimumSpan
在BoxView
- 参数
-
axis
- 可以是View.X_AXIS
或View.Y_AXIS
- 结果
- 视图想要呈现为> = 0的跨度; 通常,该视图被告知要呈现返回的跨度,尽管不能保证; 父母可以选择调整大小或打破视图
- 异常
-
IllegalArgumentException
- 对于无效的轴类型 - 另请参见:
-
View.getPreferredSpan(int)
-
getMaximumSpan
public float getMaximumSpan(int axis)
确定沿着轴的该视图的最大跨度。- 重写:
-
getMaximumSpan
在BoxView
- 参数
-
axis
- 可以是View.X_AXIS
或View.Y_AXIS
- 结果
- 视图想要呈现为> = 0的跨度; 通常,该视图被告知要呈现返回的跨度,尽管不能保证; 父母可以选择调整大小或打破视图
- 异常
-
IllegalArgumentException
- 对于无效的轴类型 - 另请参见:
-
View.getPreferredSpan(int)
-
setPropertiesFromAttributes
protected void setPropertiesFromAttributes()
更新来自属性的任何缓存值。
-
getStyleSheet
protected StyleSheet getStyleSheet()
方便的方法来获取StyleSheet。- 结果
- StyleSheet
-
-