JTextPane - сделать каретку нормального размера?

Поэтому я пытаюсь сделать текст в JTextPane с двойным интервалом. Вот мой код:

     MutableAttributeSet attrs = editor.getInputAttributes();
     StyleConstants.setLineSpacing(attrs, 2);
     editor.getStyledDocument().setParagraphAttributes(0, doc.getLength() + 1, attrs, true);

Проблема в том, что курсор (каретка) занимает три или четыре строки. Как я могу изменить размер каретки до нормального размера?

Вот снимок экрана

1 ответ

Попробуй это:

editor.setCaret(new DefaultCaret() {

    public void paint(Graphics g) {

        JTextComponent comp = getComponent();
        if (comp == null)
            return;

        Rectangle r = null;
        try {
            r = comp.modelToView(getDot());
            if (r == null)
                return;
        } catch (BadLocationException e) {
            return;
        }
        r.height = 15; //this value changes the caret size
        if (isVisible())
            g.fillRect(r.x, r.y, 1, r.height);
    }
});
Другие вопросы по тегам