我一直无法在Internet上找到与我的问题相关的任何内容。Java JScrollPane检测滚动靠近底部
我有一个JScrollPane,它添加了一个JPanel,并且JPanel被填充了JLabels。
当前,用户滚动到JScrollPane的底部,然后单击“下一步”按钮。
我想要做的是检测用户何时位于/靠近JScrollPane的底部,这样我就可以触发“下一步”行为,而无需用户输入任何内容。
这甚至可能吗?
在此先感谢大家。
我一直无法在Internet上找到与我的问题相关的任何内容。Java JScrollPane检测滚动靠近底部
我有一个JScrollPane,它添加了一个JPanel,并且JPanel被填充了JLabels。
当前,用户滚动到JScrollPane的底部,然后单击“下一步”按钮。
我想要做的是检测用户何时位于/靠近JScrollPane的底部,这样我就可以触发“下一步”行为,而无需用户输入任何内容。
这甚至可能吗?
在此先感谢大家。
您可以使用在您的JScrollPane
中的垂直滚动条上注册的AdjustmentListener,并根据事件值采取行动。
这是example。
JScrollBar使用BoundedRangeModel,它将接受ChangeListener - 因此您可以侦听滚动条的更改并作出相应的响应。
感谢您的回答,您能否提供一个示例?我无法理解文档。 – Cristian
@克里斯蒂安:没有太多。您知道如何获得垂直JScrollBar,您知道如何通过getModel()获取其模型,您知道如何添加ChangeListener,因此在侦听器的stateChanged方法中,将模型的值与其最大值进行比较。我敢打赌,你可以很容易地编码。为什么不试试呢? –
感谢您的回答,我确实看了看该页面,但无法理解它,Eclipse甚至找不到AdjustmentListener类。 – Cristian
你输入了课程吗?我更新了一个指向'java.awt.event.AdjustmentListener'文档的链接。 – Reimeus
完美的感谢,我不知道为什么Eclipse没有找到它,现在我可以看看这个例子。谢谢! – Cristian