【发布时间】:2011-12-09 12:21:54
【问题描述】:
如果我有这样的东西,我可以使用布尔标志“performAdjustment”控制自动滚动:
static boolean performAdjustment = true;
JTextArea textArea = new JTextArea();
JScrollPane jScrollPane1 = new JScrollPane(textArea);
jScrollPane1.getVerticalScrollBar().addAdjustmentListener(new AdjustmentListener() {
public void adjustmentValueChanged(AdjustmentEvent e) {
if(performAdjustment){
e.getAdjustable().setValue(e.getAdjustable().getMaximum());
}
}});
现在我这工作正常,但问题是我想在用户单击滚动条时取消设置此布尔标志,并且在用户离开单击时再次设置它(如 JavaScript 中的 onMouseOut 事件)。
你能告诉我如何添加这个新的 EventListener 来检测滚动条的点击事件吗??
【问题讨论】:
-
我需要类似 jScrollPane1.getVerticalScrollBar().addClickListener() 或类似的东西,有没有类似的东西存在??
-
添加鼠标监听怎么样?
-
谢谢你是对的,但我刚刚意识到我可以使用自动滚动:textArea.setCaretPosition(textArea.getDocument().getLength());
-
@BenvanGompel,我无法选择您的答案作为有效答案,请您将其作为答案,谢谢!!
-
你到底想达到什么目的?
标签: java swing jscrollpane