滚动条(JScrollBar)也称为滑块,用来表示一个相对值,该值代表指定范围内的一个整数。例如,用Word编辑文档时,编辑窗右边的滑块对应当前编辑位置在整个文档中的相对位置,可以通过移动选择新的编辑位置。在Swing中,用JScrollBar类实现和管理可调界面。JScrollBar类常用的构造方法是:
JScrollBar(int dir,int init,int width,int low,int high)
其中,dir表示滚动条的方向。JScrollBar类定义了两个常量,JScrollBar.VERTICAL表示垂直滚动条;JScrollBar.HORIZONTAL表示水平滚动条。init表示滚动条的初始值,该值确定滚动条滑块开始时的位置;width是滚动条滑块的宽度;最后两个参数指定滚动的下界和上界。注意滑块的宽度可能影响滚动条可得到的实际的最大值。例如,滚动条的范围是0至255,滑块的宽度是10,并利用滑块的左端或顶端来确定它的实际位置。那么滚动条可以达到的最大值是指定最大值减去滑块的宽度。所以滚动条的值不会超过245。
JScrollBar类其他常用方法是:
- setUnitIncrement():设置增量,即单位像素的增值;
- getUnitIncrement():获取增量;
- setBlockIncrement():设置滑块增量,即滑块的幅度;
- getBlockIncrement():获取滑块增量;
- setMaxinum():设置最大值;
- getMaxinum():获取最大值;
- setMininum():设置最小值;
- getMininum():获取最小值;
- setValue():设置新值;
- getValue():获取当前值。
JScrollBar类对象的事件类型是AdjustmentEvent;类要实现的接口是AdjustmentListener,接口方法是adjustmentValueChanged();注册监视器的方法是addAdjustmentListener();获取事件源对象的方法是getAdjustable().
MyScrollBar类定义的方法getPreferedSize()也是Component类中定义的方法,界面组件通过覆盖定义该方法确定界面组件的大小。当布局字处理器在安排组件布局时,就会调用该方法来确定组件的大小。这个方法返回一个Dimension类型的对象,Dimension对象含两个整数,分别为组件的宽和高。
系列文章:
Java知多少(83)面板基础:JPanel和JScrollPane