JavaTM 2 Platform
Standard Ed. 6

javax.swing
介面 ButtonModel

所有父級介面:
ItemSelectable
所有已知實作類別:
DefaultButtonModel, JToggleButton.ToggleButtonModel

public interface ButtonModel
extends ItemSelectable

按鈕的狀態模型。

此模型用於常規按鈕,也可以用於複選框和單選鈕,它們是特殊種類別的按鈕。實際上,按鈕的 UI 負責調用其模型上的方法來管理狀態,細節如下:

簡單地說,在一個常規按鈕上按下並釋放鼠標將觸發按鈕並導致觸發 ActionEvent。可通過按鈕(通常是空格鍵)的外觀所定義的鍵盤鍵產生相同的行為。當按鈕具有焦點時,按下並釋放此鍵將得到相同的結果。對於複選框和單選鈕,剛剛所描述的鼠標或鍵盤的等效序列導致選中該按鈕。

詳細地說,當與鼠標一起使用時,按鈕的狀態模型的工作方式如下:
在按鈕的上方按下鼠標使得模型既被選中又被按下。只要鼠標保持按下,模型就保持按下,即使鼠標移到按鈕之外也是如此。相反,只有當鼠標在按鈕邊界內保持按下時,模型才是被選中的(它可移進或移出按鈕的邊界,但是只有在按鈕中的那部分時間模型才是被選中的)。當在模型被選中的同時釋放鼠標時,也就是說當鼠標以前在按鈕上按下(並且尚未釋放),之後在該按鈕上方釋放時,將觸發按鈕和 ActionEvent。鼠標釋放後,模型就處於未被選中和未被按下狀態。

詳細地說,當與鍵盤一起使用時,按鈕狀態模型的工作方式如下:
當按鈕具有焦點時,按下鍵盤鍵所定義的外觀使得模型既被選中又被按下。只要此鍵保持按下,模型就保持此狀態。釋放該鍵會將模型設置為未被選中和未被按下、觸發按鈕並導致觸發 ActionEvent


方法摘要
 void addActionListener(ActionListener l)
          向模型添加一個 ActionListener
 void addChangeListener(ChangeListener l)
          向模型添加一個 ChangeListener
 void addItemListener(ItemListener l)
          向模型添加一個 ItemListener
 String getActionCommand()
          返回該按鈕的動作命令字元串。
 int getMnemonic()
          獲取該按鈕的鍵盤助記符。
 boolean isArmed()
          指示觸發按鈕操作的部分委託事項。
 boolean isEnabled()
          指示是否可通過輸入設備(比如鼠標指針)選擇或觸發按鈕。
 boolean isPressed()
          指示按鈕是否已被按下。
 boolean isRollover()
          指示鼠標是否在按鈕上。
 boolean isSelected()
          指示按鈕是否已經被選擇。
 void removeActionListener(ActionListener l)
          從模型中移除一個 ActionListener
 void removeChangeListener(ChangeListener l)
          從模型中移除一個 ChangeListener
 void removeItemListener(ItemListener l)
          從模型中移除一個 ItemListener
 void setActionCommand(String s)
          設置動作命令字元串,在觸發按鈕時,該字元串將作為 ActionEvent 的一部分被發送。
 void setArmed(boolean b)
          將此按鈕標記為選中或未選中。
 void setEnabled(boolean b)
          啟用或禁用該按鈕。
 void setGroup(ButtonGroup group)
          標識該按鈕所屬的組,這是單選鈕所需要的,單選鈕在它們的組內相互排斥。
 void setMnemonic(int key)
          設置該按鈕的鍵盤助記符(快捷鍵或加速鍵)。
 void setPressed(boolean b)
          將按鈕設置為按下或未被按下。
 void setRollover(boolean b)
          設置或清除該按鈕的翻轉狀態
 void setSelected(boolean b)
          選擇或取消選擇該按鈕。
 
從介面 java.awt.ItemSelectable 繼承的方法
getSelectedObjects
 

方法詳細資訊

isArmed

boolean isArmed()
指示觸發按鈕操作的部分委託事項。

返回:
如果按鈕被選中,並準備觸發它,則返回 true
另請參見:
setArmed(boolean)

isSelected

boolean isSelected()
指示按鈕是否已經被選擇。只有某些型別的按鈕需要此指示,比如單選鈕和複選框。

返回:
如果按鈕已選擇,則返回 true

isEnabled

boolean isEnabled()
指示是否可通過輸入設備(比如鼠標指針)選擇或觸發按鈕。

返回:
如果啟用按鈕,則返回 true

isPressed

boolean isPressed()
指示按鈕是否已被按下。

返回:
如果按鈕已被按下,則返回 true

isRollover

boolean isRollover()
指示鼠標是否在按鈕上。

返回:
如果鼠標在按鈕上,則返回 true

setArmed

void setArmed(boolean b)
將此按鈕標記為選中或未選中。

參數:
b - 是否應該選中該按鈕

setSelected

void setSelected(boolean b)
選擇或取消選擇該按鈕。

參數:
b - 為 true 表示選擇該按鈕,為 false 表示取消對該按鈕的選擇。

setEnabled

void setEnabled(boolean b)
啟用或禁用該按鈕。

參數:
b - 是否應該啟用該按鈕
另請參見:
isEnabled()

setPressed

void setPressed(boolean b)
將按鈕設置為按下或未被按下。

參數:
b - 是否應該按下該按鈕
另請參見:
isPressed()

setRollover

void setRollover(boolean b)
設置或清除該按鈕的翻轉狀態

參數:
b - 該按鈕是否處於翻轉狀態
另請參見:
isRollover()

setMnemonic

void setMnemonic(int key)
設置該按鈕的鍵盤助記符(快捷鍵或加速鍵)。

參數:
key - 指示加速鍵的 int 值

getMnemonic

int getMnemonic()
獲取該按鈕的鍵盤助記符。

返回:
指示加速鍵的 int 值
另請參見:
setMnemonic(int)

setActionCommand

void setActionCommand(String s)
設置動作命令字元串,在觸發按鈕時,該字元串將作為 ActionEvent 的一部分被發送。

參數:
s - 標識產生的事件的 String
另請參見:
getActionCommand(), ActionEvent.getActionCommand()

getActionCommand

String getActionCommand()
返回該按鈕的動作命令字元串。

返回:
標識產生的事件的 String
另請參見:
setActionCommand(java.lang.String)

setGroup

void setGroup(ButtonGroup group)
標識該按鈕所屬的組,這是單選鈕所需要的,單選鈕在它們的組內相互排斥。

參數:
group - 該按鈕所屬的 ButtonGroup

addActionListener

void addActionListener(ActionListener l)
向模型添加一個 ActionListener

參數:
l - 要添加的偵聽器

removeActionListener

void removeActionListener(ActionListener l)
從模型中移除一個 ActionListener

參數:
l - 要移除的偵聽器

addItemListener

void addItemListener(ItemListener l)
向模型添加一個 ItemListener

指定者:
介面 ItemSelectable 中的 addItemListener
參數:
l - 要添加的偵聽器
另請參見:
ItemEvent

removeItemListener

void removeItemListener(ItemListener l)
從模型中移除一個 ItemListener

指定者:
介面 ItemSelectable 中的 removeItemListener
參數:
l - 要移除的偵聽器
另請參見:
ItemEvent

addChangeListener

void addChangeListener(ChangeListener l)
向模型添加一個 ChangeListener

參數:
l - 要添加的偵聽器

removeChangeListener

void removeChangeListener(ChangeListener l)
從模型中移除一個 ChangeListener

參數:
l - 要移除的偵聽器

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only