public class ComponentView extends View
元件放置相对于文本基线根据返回的值Component.getAlignmentY
。swing组件这个值可以方便的设置使用方法JComponent.setAlignmentY
。例如,设定值0.75
将导致组件百分之75是基线以上,和百分之25的分量要低于基线。
该类实现了在多线程(即从模型更改的异步通知)的存在下工作的额外的工作(例如,通过对事件线程上的所有组件访问)确保所需的额外工作。
所使用的组件是由createcomponent方法的返回值确定。此方法的默认实现是返回举行作为元素的属性的组件(通过调用styleconstants。GetComponent)。这种行为的一个限制是,该组件不能使用一个以上的文本组件(即与共享模型)。子类可以通过实施createcomponent实际创建一个组件基于某种规范包含在属性中删除此约束。在HTML包装objectview类是一个支持共享模型的多成分的观点componentview实施例。
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Constructor and Description |
---|
ComponentView(Element elem)
创建一个新的componentview对象。
|
Modifier and Type | Method and Description |
---|---|
protected Component |
createComponent()
创建与此视图关联的组件。
|
float |
getAlignment(int axis)
沿着一个轴确定此视图所需的对齐方式。
|
Component |
getComponent()
获取与视图关联的组件。
|
float |
getMaximumSpan(int axis)
沿着一个轴确定该视图的最大跨度。
|
float |
getMinimumSpan(int axis)
沿着一个轴确定该视图的最小间距。
|
float |
getPreferredSpan(int axis)
沿着一个轴确定该视图的首选跨度。
|
Shape |
modelToView(int pos, Shape a, Position.Bias b)
从模型的坐标空间提供了一个映射到视图的映射。
|
void |
paint(Graphics g, Shape a)
真正的油漆行为自然发生的关联,该组件已与它的父容器(同一个容器承载此视图)。
|
void |
setParent(View p)
为子视图设置父视图。
|
int |
viewToModel(float x, float y, Shape a, Position.Bias[] bias)
从视图坐标空间提供一个映射到模型的逻辑坐标空间。
|
append, breakView, changedUpdate, createFragment, forwardUpdate, forwardUpdateToView, getAttributes, getBreakWeight, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getGraphics, getNextVisualPositionFrom, getParent, getResizeWeight, getStartOffset, getToolTipText, getView, getViewCount, getViewFactory, getViewIndex, getViewIndex, insert, insertUpdate, isVisible, modelToView, modelToView, preferenceChanged, remove, removeAll, removeUpdate, replace, setSize, updateChildren, updateLayout, viewToModel
public ComponentView(Element elem)
elem
-元素装饰
protected Component createComponent()
public final Component getComponent()
public void paint(Graphics g, Shape a)
paint
方法重写,继承类
View
g
-图形上下文
a
-形状
View.paint(java.awt.Graphics, java.awt.Shape)
public float getPreferredSpan(int axis)
getPreferredSpan
方法重写,继承类
View
axis
-可能是view.x_axis或view.y_axis
IllegalArgumentException
-无效的轴
View.getPreferredSpan(int)
public float getMinimumSpan(int axis)
getMinimumSpan
方法重写,继承类
View
axis
-可能是view.x_axis或view.y_axis
IllegalArgumentException
-无效的轴
View.getPreferredSpan(int)
public float getMaximumSpan(int axis)
getMaximumSpan
方法重写,继承类
View
axis
-可能是view.x_axis或view.y_axis
IllegalArgumentException
-无效的轴
View.getPreferredSpan(int)
public float getAlignment(int axis)
getAlignment
方法重写,继承类
View
axis
-可能是view.x_axis或view.y_axis
public void setParent(View p)
getContainer
。如果父视图参数为空,这一观点被清理干净,这样的组件是从其母删除。
组件层次结构的更改将触摸组件锁,这是从视图层次结构中不安全的一个。因此,如果在事件线程上执行此功能,或在事件队列中调用另一个线程(从异步更新通知更改),则将立即执行此功能。
public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException
modelToView
方法重写,继承类
View
pos
-位置转换> = 0
a
-分配区域进行渲染
b
-偏向前一个字符或下一个字符的偏移量表示,如果位置是两视图边界;
b
将有以下值之一:
Position.Bias.Forward
Position.Bias.Backward
BadLocationException
-如果给定的位置不在相关文件表示一个有效的位置
View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)
public int viewToModel(float x, float y, Shape a, Position.Bias[] bias)
viewToModel
方法重写,继承类
View
x
- x坐标> = 0
y
- Y坐标> = 0
a
-分配区域进行渲染
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.