2012-06-08 163 views
0

我用jfcunit,我有以下代码:JscrollBar isEnabled总是返回true?

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。

也许有,我应该检查滚动窗格或也许我失去了一些东西的属性。任何建议表示赞赏。谢谢。

回答

1

我发现了一个办法解决它:如果visibleAmount和最大金额是相同的意思滚动条被禁用:

if(!scrollBar.isVisible() 
||(scrollBar.getVisibleAmount()==scrollBar.getMaximum())){ 
          return; 
         }