调整事件(AdjustmentEvent)
调整事件包含一个事件,即adjustment_value_changed事件,当操纵滚动条改变其滑块位置时引发动作。AjustEvent的方法如下:
public adjustable getadjustable()
返回引发事件的对象。
public int getValue()
返回调整事件中的当前值。
public void addadjustmentListener(adjustListener l)
添加调整监听者接受来自AdjustmentEvent实例。
public interface AdjustmentListener extends Eventllistener
接收调整事件的监听接口,有一个方法:
public void adjustmentValueChanged(AdjustmentEvent e)
可在调整改变时调用这个值。
程序例子:测试调整事件。设置一个水平滚动条,取值为1-36,随着滑块的变化,滚动条的值将显示在文本区域中,并且字体也会随着变化
//程序文件名为Test.java
import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.Panel;
import java.awt.Scrollbar;
import java.awt.TextArea;
import java.awt.event.AdjustmentEvent;
import java.awt.event.AdjustmentListener;
public class Test extends Applet implements AdjustmentListener
{
Scrollbar s;
TextArea txtValue;
Panel p;
public void init() {
s=new Scrollbar(Scrollbar.HORIZONTAL, 0, 1, 10, 36);
//添加监听者
s.addAdjustmentListener(this);
txtValue=new TextArea(5,25);
//界面布局
p=new Panel(new BorderLayout());
p.add(s, BorderLayout.NORTH);
p.add(txtValue,BorderLayout.SOUTH);
add(p);
}
public void start() {
}
public void adjuxtmentValueChanged(AdjustmentEvent e)
{
int value;
Font oldF;
if(e.getAdjustable()==s){
//得到滚动条的值
value=e.getValue();
//将值写入文本区域
txtValue.setText(new Integer(value).toString());
//按照滚动条带的值设置字体
oldF=txtValue.getFont();
txtValue.setFont(new Font(oldF.getName(),oldF.getStyle(),value));
}
}
}