修飾子與參數
public void setMinimum(int newMinimum)
setMinimum() 沒有回傳值 (return value) ,需要一個 int 型態 (type) 的整數參數 (paramenter) ,非物件 (object) 。
舉例如下
import java.awt.*;
import java.awt.event.*;
public class ScrollbarDemo implements AdjustmentListener {
Frame frame;
Scrollbar scrollbar1;
Scrollbar scrollbar2;
Panel panel;
Button button;
int x ,y;
public static void main(String[] args) {
new ScrollbarDemo();
}
public ScrollbarDemo() {
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);
scrollbar2 = new Scrollbar();
scrollbar2.setMaximum(240);
scrollbar2.setMinimum(0);
scrollbar2.setOrientation(Scrollbar.VERTICAL);
scrollbar2.setValue(100);
y = scrollbar1.getValue();
scrollbar2.addAdjustmentListener(this);
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.add(scrollbar2, BorderLayout.EAST);
frame.setVisible(true);
System.out.println("1 maximum: " + scrollbar1.getMaximum());
System.out.println("1 minimum: " + scrollbar1.getMinimum());
System.out.println("1 orientation: " + scrollbar1.getOrientation());
System.out.println("2 maximum: " + scrollbar2.getMaximum());
System.out.println("2 minimum: " + scrollbar2.getMinimum());
System.out.println("2 orientation: " + scrollbar2.getOrientation());
}
public void adjustmentValueChanged(AdjustmentEvent e) {
x = scrollbar1.getValue();
y = scrollbar2.getValue();
System.out.println("x: " + x);
System.out.println("y: " + y);
button.setLocation(x, y);
}
}
class AdapterDemo extends WindowAdapter {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
/* 《程式語言:教學誌》的範例程式
http://pydoing.blogspot.com/
檔名:ScrollbarDemo.java
功能:示範 Java 程式
作者:張凱慶
時間:西元 2012 年 3 月 */此例的 ScrollbarDemo 直接實作 AdjustmentListener 介面
public class ScrollbarDemo implements AdjustmentListener {此例建立兩個 Scrollbar 型態的物件,接下來依序呼叫 Scrollbar 型態的 setMaximum() 設定捲軸的最大值, setMinimum() 設定捲軸的最小值, setOrientation() 設定捲軸的方向,第一個用 Scrollbar.HORIZONTAL 設定成水平捲軸,第二個用 Scrollbar.VERTICAL 設定成垂直捲軸,然後呼叫 setValue() 設定捲軸的捲動位置, getValue() 取得捲動位置值給屬性 x 與 y ,最後呼叫 addAdjustmentListener() 設定事件處理,並以 this 當參數
scrollbar1 = new Scrollbar(); scrollbar1.setMaximum(320); scrollbar1.setMinimum(0); scrollbar1.setOrientation(Scrollbar.HORIZONTAL); scrollbar1.setValue(100); x = scrollbar1.getValue(); scrollbar1.addAdjustmentListener(this); scrollbar2 = new Scrollbar(); scrollbar2.setMaximum(240); scrollbar2.setMinimum(0); scrollbar2.setOrientation(Scrollbar.VERTICAL); scrollbar2.setValue(100); y = scrollbar1.getValue(); scrollbar2.addAdjustmentListener(this);
建構子最後工作是在命令列印出相關訊息,依序呼叫 Scrollbar 型態的 getMaximum() 印出捲軸的最大值, getMinimum() 印出最小值, getOrientation() 印出捲軸方向值
System.out.println("1 maximum: " + scrollbar1.getMaximum());
System.out.println("1 minimum: " + scrollbar1.getMinimum());
System.out.println("1 orientation: " + scrollbar1.getOrientation());
System.out.println("2 maximum: " + scrollbar2.getMaximum());
System.out.println("2 minimum: " + scrollbar2.getMinimum());
System.out.println("2 orientation: " + scrollbar2.getOrientation());由於 ScrollbarDemo 實作 AdjustmentListener 介面,因此要寫出 adjustmentValueChanged()
public void adjustmentValueChanged(AdjustmentEvent e) {
x = scrollbar1.getValue();
y = scrollbar2.getValue();
System.out.println("x: " + x);
System.out.println("y: " + y);
button.setLocation(x, y);
}此例的按鈕會隨捲軸轉動移動位置。
編譯後執行,結果如下

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