2016-04-28 7 views
1

Ich habe eine JTextArea innerhalb einer JScrollPane und das Caret Update funktioniert einfach gut.Java JScrollPane stoppen Scrollen nach dem Klicken in es

DefaultCaret caret = (DefaultCaret)jTextArea1.getCaret(); 
caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE); 

Mein Problem ist, nachdem ich die Bildlaufleisten auf dem JTextArea klicken größer geworden, aber das Ansichtsfenster immer noch nicht zu folgen.

enter image description here

Wie Sie die vertikale Bildlaufleiste ist nicht am Boden sehen. Der Abstand zur unteren Ecke des TextPanees nimmt zu, aber das Ansichtsfenster bleibt an seiner Position hängen. Inzwischen bin ich wegen HTML-Unterstützung zu einem JTextPane gewechselt, habe aber immer noch das selbe Problem.

Ich hoffe, Sie verstehen mich, grüßt.

Antwort

1

Wenn Sie auf JTextArea klicken, legen Sie die Caret-Position an diesem Punkt fest. Das Caret-Element versucht immer, sich selbst sichtbar zu machen, damit der Textbereich nicht mehr scrollt, wenn Sie später Text an den Cursor setzen. Wenn Sie also Text anhängen, müssen Sie auch textarea.setCaretPosition (wherevery_you_want_it_to_be) aufrufen.

Verwandte Themen