2010-09-21 26 views
4

如何基於滾輪鼠標旋轉量以編程方式移動JScrollBar以編程方式使用JScrollBar

+0

它會自動處理。 – 2010-09-21 09:15:29

+0

是的,但我希望在用戶與另一個組件進行交互時以編程方式執行此操作(例如,JSlider ...) – xdevel2000 2010-09-21 09:16:46

回答

4

可以使用的JScrollBar的setValue方法來設置滾動條的位置。

或者,您可以使用JScrollBar後面Model的方法;例如:bar.getModel().setValue(position)

您可以使用JScrollBar的(或從模型)的getMinimumgetmaximum方法檢查setValue的有效值。

的Javadoc應該幫助更多:JScrollBar

0

發生這種情況,要麼 WHEEL_UNIT_SCROLL或 WHEEL_BLOCK_SCROLL類型的滾動,是平臺 依賴性。鼠標滾輪的數量也是平臺 的依賴。滾動的 的類型和數量都可以通過平臺的platform.control面板的鼠標 控制面板進行設置。

here

0

試試這個:

private void scrollToBottom() { 
    int tamanio = scrollPane.getVerticalScrollBar().getMaximum(); 
    scrollPane.getVerticalScrollBar().getModel().setValue(tamanio); 
} 

private void scrollToTop() {  
    scrollPane.getVerticalScrollBar().getModel().setValue(0); 
} 

private void scrollToNext() { 
    int posicion = scrollPane.getVerticalScrollBar().getModel().getValue(); 
    int altura = scrollPane.getHeight(); 
    scrollPane.getVerticalScrollBar().getModel().setValue(posicion+altura); 
} 

private void scrollToBack() { 
    int posicion = scrollPane.getVerticalScrollBar().getModel().getValue(); 
    int altura = scrollPane.getHeight(); 
    scrollPane.getVerticalScrollBar().getModel().setValue(posicion-altura); 
}