public class NavigationFilter extends Object
NavigationFilter
可用于限制光标所在的位置。
当默认光标定位动作尝试重新定位光标时,将调用NavigationFilter
,假设JTextComponent
具有非空NavigationFilter
集。
以这种方式, NavigationFilter
可以有效地限制光标位置的位置。
类似地DefaultCaret
将调用到NavigationFilter
当用户改变选择,以进一步限制光标可被定位。
子类可以有条件地调用超级实现来限制光标的放置位置,或直接调用到FilterBypass
。
Caret
, DefaultCaret
, View
Modifier and Type | Class and Description |
---|---|
static class |
NavigationFilter.FilterBypass
用作一种方法来规避回调到插入符号来定位光标。
|
Constructor and Description |
---|
NavigationFilter() |
Modifier and Type | Method and Description |
---|---|
int |
getNextVisualPositionFrom(JTextComponent text, int pos, Position.Bias bias, int direction, Position.Bias[] biasRet)
返回下一个视觉位置,从现有位置放置插入符号。
|
void |
moveDot(NavigationFilter.FilterBypass fb, int dot, Position.Bias bias)
在插入点移动点之前调用。
|
void |
setDot(NavigationFilter.FilterBypass fb, int dot, Position.Bias bias)
在插入点设置点之前调用。
|
public void setDot(NavigationFilter.FilterBypass fb, int dot, Position.Bias bias)
FilterBypass
与参数的传递。
子类可能希望有条件地调用super具有不同位置,或调用必要的方法对FilterBypass
fb
- FilterBypass可以用于突变插入位置
dot
- 位置> = 0
bias
- 放置点的偏差
public void moveDot(NavigationFilter.FilterBypass fb, int dot, Position.Bias bias)
FilterBypass
与参数的传递。
子类可能希望有条件地具有不同位置的超打电话,或调用在必要的方法FilterBypass
。
fb
- FilterBypass可以用于突变插入位置
dot
- 位置> = 0
bias
- 偏好的新位置
public int getNextVisualPositionFrom(JTextComponent text, int pos, Position.Bias bias, int direction, Position.Bias[] biasRet) throws BadLocationException
text
- 包含文本的JTextComponent
pos
- 用于确定下一个位置的位置
bias
- 用于确定下一个职位的偏差
direction
- 从当前位置的方向,可以被认为是通常在键盘上找到的箭头键。
这将是以下值之一:
biasRet
- 用于返回下一个位置的最终偏差
BadLocationException
IllegalArgumentException
- 如果
direction
没有上述合法价值之一