Java API 分類導覽 - java.awt.event.AdjustmentEvent

AdjustmentEvent 類別 (class) 主要處理捲軸滾動的事件,此為實作 AdjustmentListener 介面 (interface) 後, adjustmentValueChanged() 的參數 (parameter) e 即為 AdjustmentEvent 物件 (object) 。



修飾子
public class AdjustmentEvent


父類別
java.awt.AWTEvent


實作介面
Serializable


建構子
public AdjustmentEvent(Adjustable source, int id, int type, int value)
public AdjustmentEvent(Adjustable source, int id, int type, int value, boolean isAdjusting)


常用方法
名稱敘述
getValue()取得目前捲軸的捲動值


舉例如下
import java.awt.*;
import java.awt.event.*;
 
public class AdjustmentEventDemo implements AdjustmentListener {
    Frame frame;
    Scrollbar scrollbar1;
    Panel panel;
    Button button;
    int x, y;
     
    public static void main(String[] args) {
        new AdjustmentEventDemo();
    }
     
    public AdjustmentEventDemo() {
        frame = new Frame("AWTDemo");
        frame.addWindowListener(new AdapterDemo());
        frame.setLayout(new BorderLayout());
        frame.setSize(320, 240);
         
        scrollbar1 = new Scrollbar();
        scrollbar1.setMaximum(320);
        scrollbar1.setMinimum(0);
        scrollbar1.setOrientation(Scrollbar.HORIZONTAL);
        scrollbar1.setValue(100);
        x = scrollbar1.getValue();
        scrollbar1.addAdjustmentListener(this);
        
        y = 100; 
        button = new Button("new");
        button.setSize(50, 20);
        button.setLocation(x, y);
        panel = new Panel(null);
        panel.add(button);
 
        frame.add(panel, BorderLayout.CENTER);
        frame.add(scrollbar1, BorderLayout.SOUTH);
         
        frame.setVisible(true);
    }
     
    public void adjustmentValueChanged(AdjustmentEvent e) {
        x =  e.getValue();
        System.out.println("x: " + x);
        button.setLocation(x, y);
    }
}
 
class AdapterDemo extends WindowAdapter {
    public void windowClosing(WindowEvent e) {
        System.exit(0);
    }
}

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:AdjustmentEventDemo.java
    功能:示範 Java 程式 
    作者:張凱慶
    時間:西元 2012 年 3 月 */


此例的 AdjustmentEventDemo 有實作 AdjustmentListener 介面
public class AdjustmentEventDemo implements AdjustmentListener {


因此需要實作 adjustmentValueChanged() 方法,參數 e 就是 AdjustmentEvent 物件,接著呼叫 AdjustmentEvent 的 getValue() 取得捲軸捲動值,並將按鈕座標隨捲軸捲動而移動
public void adjustmentValueChanged(AdjustmentEvent e) {
    x =  e.getValue();
    System.out.println("x: " + x);
    button.setLocation(x, y);
}


編譯後執行,結果如下



中英文術語對照
類別class
介面interface
參數parameter
物件object


您可以繼續參考
事件處理


相關目錄
Java API 分類導覽
Java 教材
首頁


參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/event/AdjustmentEvent.html

沒有留言: