如何更改JTextPane中的插入符号高度,以及如何将其垂直移动(使插入符号看起来比正常值低2px而不移动任何其他内容?
BTW:This不起作用。它使插入符号停止闪烁。
答案 0 :(得分:1)
您之前示例的唯一问题是未设置眨眼率...
JTextPane editor = new JTextPane();
DefaultCaret dc = new DefaultCaret() {
@Override
public void paint(Graphics g) {
if (isVisible()) {
JTextComponent comp = getComponent();
if (comp == null) {
return;
}
Rectangle r = null;
try {
r = comp.modelToView(getDot());
if (r == null) {
return;
}
} catch (BadLocationException e) {
return;
}
if (isVisible()) {
g.fillRect(r.x, r.y + 2, 1, r.height - 2);
}
}
}
};
dc.setBlinkRate(500);
editor.setCaret(dc);
有一个闪烁率属性,您可能应该使用它来保持同步,但我会让你在需要的时候解决这个问题......