拖动时JScrollPane步长

时间:2013-12-12 19:45:00

标签: java swing mouse jscrollpane drag

拖动它时是否可以指定JScrollPane的步长?

我知道setUnitIncrementsetBlockIncrement,但拖动滚动条时这些功能不起作用。

编辑:AdjustmentListener

final AdjustmentListener myAdjustmentListener = new AdjustmentListener() {
   @Override
   public void adjustmentValueChanged(AdjustmentEvent e) {
       if (e.getAdjustmentType() == AdjustmentEvent.TRACK){
           e.getAdjustable().setUnitIncrement(500);
           e.getAdjustable().setBlockIncrement(500);
       }
   }
};

2 个答案:

答案 0 :(得分:1)

设置setUnitIncrementsetBlockIncrement值只会在使用鼠标滚轮,箭头键和滚动条箭头滚动时更改滚动速度。拖动滚动条时,这些值不会更改滚动速度。

但是AdjustmentListener可以添加到滚动条以收听滚动条移动。

答案 1 :(得分:0)

一个AdjustmentListener应该为你做神奇的事。你看看这个: How to make JScrollPane scroll 1 line per mouse wheel step?