修飾子與參數
public String getSelectedItem()
getSelectedItem() 的回傳值 (return value) 為 String 型態 (type) 字串物件 (object) ,不需要參數 (paramenter) 。
舉例如下
import java.awt.*; import java.awt.event.*; public class ChoiceDemo implements ItemListener { Frame frame; Choice choice; public static void main(String[] args) { new ChoiceDemo(); } public ChoiceDemo() { frame = new Frame("AWTDemo"); frame.addWindowListener(new AdapterDemo()); frame.setLayout(new FlowLayout()); choice = new Choice(); choice.addItemListener(this); choice.add("one"); choice.add("two"); choice.add("three"); choice.add("remove all"); choice.select("three"); frame.add(choice); frame.pack(); frame.setVisible(true); for (int i = 0;i < choice.getItemCount();i++) { System.out.println(i + " : " + choice.getItem(i)); } } public void itemStateChanged(ItemEvent e) { Choice c = (Choice) e.getSource(); System.out.println("index: " + c.getSelectedIndex()); System.out.println("item: " + c.getSelectedItem()); if (c.getSelectedItem() == "one") { c.insert("demo", 1); } if (c.getSelectedItem() == "two") { c.remove("one"); } if (c.getSelectedItem() == "three") { c.remove(1); } if (c.getSelectedItem() == "remove all") { c.removeAll(); } } } class AdapterDemo extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ChoiceDemo.java 功能:示範 Java 程式 作者:張凱慶 時間:西元 2012 年 3 月 */
此例的 ChoiceDemo 直接實作 ItemListener 介面
public class ChoiceDemo implements ItemListener {
先建立 Choice 型態的物件後,接下來呼叫 Choice 型態的 addItemListener() 設定事件處理, 並以 this 當參數,然後依序呼叫 Choice 型態的 add() ,加入四個選項標籤後,最後呼叫 Choice 型態的 select() ,並以其中一個標籤當預設選項
choice = new Choice(); choice.addItemListener(this); choice.add("one"); choice.add("two"); choice.add("three"); choice.add("remove all"); choice.select("three");
建構子的最後一個工作是利用迴圈,並呼叫 Choice 的 getItemCount() 取得選項總數當迴圈結束條件,然後在命令列呼叫 Choice 的 getItem() 印出每個選項的資訊
for (int i = 0;i < choice.getItemCount();i++) { System.out.println(i + " : " + choice.getItem(i)); }
由於 Choice 實作 ItemListener 介面,因此要寫出 itemStateChanged()
public void itemStateChanged(ItemEvent e) { Choice c = (Choice) e.getSource(); System.out.println("index: " + c.getSelectedIndex()); System.out.println("item: " + c.getSelectedItem()); if (c.getSelectedItem() == "one") { c.insert("demo", 1); } if (c.getSelectedItem() == "two") { c.remove("one"); } if (c.getSelectedItem() == "three") { c.remove(1); } if (c.getSelectedItem() == "remove all") { c.removeAll(); } }
只要有文字標籤被選取,就呼叫 Choice 的 getSelectedIndex() 印出選項的索引值, getSelectedItem() 印出選項的文字標籤,然後判斷是哪個選項,如果 one 被選取,就呼叫 Choice 的 insert() 插入新的選項,如果 two 被選取,就呼叫 Choice 的 remove() 移除掉 one ,如果 three 被選取,就移除掉索引值為 1 的選項,如果 remove all 被選取,就呼叫 Choice 的 removeAll() 移除掉所有選項。
編譯後執行,結果如下
中英文術語對照 | |
---|---|
類別 | class |
方法 | method |
回傳值 | return value |
型態 | type |
物件 | object |
參數 | parameter |
您可以繼續參考
AWT 元件
相關目錄
Java API 分類導覽
Java 教材
首頁
參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/Choice.html
沒有留言:
張貼留言