我正在使用jtextarea,它是在我的应用程序执行期间动态填充的(如日志).I希望删除垂直滚动条的自动滚动,我的意思是文本正在字段中添加,插入符号的位置不变(只有当我手动拖动它时它才会改变)。我该怎么做呢?我尝试过scrollPane.getHorizontalScrollBar().setAutoscrolls(false),但这不起作用。
发布于 2011-12-21 23:58:05
就其本身而言,文本区域不会滚动;您必须在代码中包含某些内容才能实现滚动。
通常的方法是在文档末尾设置插入符号(当您使用Java5时加上caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);;请参阅Text Area Scrolling)
要停止滚动,您必须找到应用程序中的代码并将其关闭。
setAutoscrolls()在这种情况下不起作用,因为它只在您拖动选择文本并且鼠标移出组件时使用,而且此属性的用途是其他属性(如果为true,只要鼠标在组件外部,就会生成合成鼠标事件)。
发布于 2011-12-21 23:48:39
如果我没理解错你的问题,你可以使用下面这样的东西:
myTextArea.setCaretPosition(myTextArea.getDocument().getLength() - 1);https://stackoverflow.com/questions/8592415
复制相似问题