【发布时间】:2016-08-17 15:06:38
【问题描述】:
我有一个程序可以将大量文本打印到我在应用程序中用作控制台的文本区域。
它输出实时的建筑信息。
默认情况下它会向下滚动到底部,这很好,但我希望能够抓住滚动条并在文本区域中向上查看在文本仍附加到文本区域时发生了什么。
我的问题是当我抓住滚动条时如何禁用自动滚动?
理想的情况是: 如果滚动条回到末尾,则自动滚动 当我向上滚动滚动条时禁用自动滚动,因为它很难阅读任何内容,而文本一直跳回末尾。
这是我的文本区域附加程序
private void run(final TextArea console) {
try {
console.clear();
BufferedReader stdInput;
stdInput = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = stdInput.readLine()) != null) {
String feed = line;
Platform.runLater(() -> console.appendText(feed + "\n"));
}
} catch (Exception e) {
console.appendText(e.toString());
}
}
【问题讨论】: