2012-06-08 200 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; 
         }