我在TypeToken.getParameterized(List.class, myType).getType();
中有一个JTextArea
,我使用JScrollPane
向其添加消息。我试图通过在附加文本后将滚动条的值设置为最大值来自动滚动。但是,display.append()
的值在追加一行后不会立即更新。我尝试使用getVerticalScrollBar().getMaximum()
,revalidate()
和repaint()
强制更新,但似乎无法找到正确的功能。
MWE:
updateUI()
答案 0 :(得分:1)
一种可能的解决方案是将插入符号位置设置为文本的结尾(或开头),如:
textArea.setCaretPosition (textArea.getText ().length ()); // to scroll to the bottom
textArea.setCaretPosition (0); // to scroll to the top
我使用类似的指令将插入位置设置为0,滚动条自动滚动到顶部,因此它应该适合你。