我使用jfcunit,我有以下代码:
if ((Component)event.getSource() instanceof JScrollPane) {
JScrollPane scrollPane= (JScrollPane) (Component)event.getSource();
JScrollBar scrollBar=(JScrollBar) scrollPane.getVerticalScrollBar();
if(!scrollBar.isVisible()||!scrollBar.isEnabled()){
return;
}
在鼠标滚轮事件上运行并获取它的来源。 问题是scrollBar.isVisible()工作正常但scrollBar.isEnabled()总是返回true,即使scrollBar被禁用了,我似乎也没弄清楚原因。
也许有一个属性我应该检查滚动窗格或者我错过了什么。任何建议表示赞赏。感谢。
答案 0 :(得分:1)
我找到了解决方法:如果visibleAmount和最大数量相同,则意味着滚动条被禁用:
if(!scrollBar.isVisible()
||(scrollBar.getVisibleAmount()==scrollBar.getMaximum())){
return;
}