修飾子與參數
void adjustmentValueChanged(AdjustmentEvent e)
adjustmentValueChanged() 沒有回傳值 (return value) ,參數 (paramenter) 為 AdjustmentEvent 型態 (type) 的物件 (object) 。
舉例如下
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);
}編譯後執行,結果如下

| 中英文術語對照 | |
|---|---|
| 介面 | interface |
| 方法 | method |
| 回傳值 | return value |
| 型態 | type |
| 物件 | object |
| 參數 | parameter |
您可以繼續參考
事件處理
相關目錄
Java API 分類導覽
Java 教材
首頁
參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/event/AdjustmentListener.html
沒有留言:
張貼留言