[英]Get boolean from a JTextField
我正在嘗試從下面的文本字段中獲取值以與parent.addNewRoom(roomNo,roomEnSuite);
但是roomEnSuite是父類中的布爾值。 從JTextField獲取布爾值的正確過程是什么?
public void actionPerformed( ActionEvent ae)
{
String item = ae.getActionCommand();
if ( item.equals("Confirm"))
{
String roomNo = nameJTextField.getText();
String roomEnSuiteS = idJTextField.getText();
parent.addNewRoom(roomNo,roomEnSuite);
this.dispose();
}
else if ( item.equals("Cancel"))
{
parent.resetButtons();
this.dispose();
}
}
為了從我的上述評論中得到完整的答案:
使用JTextField
處理boolean
輸入不是解決問題的好方法,因為用戶可以輸入yes
/ no
/ true
/ false
等多種變體,例如拼寫錯誤?
使用JRadioButton
(用於單個答案)或JCheckbox
(用於多個答案)將是處理true
或false
輸入的更好方法。 我建議使用JRadioButton
因為您不希望用戶檢查true
和false
。
http://docs.oracle.com/javase/tutorial/uiswing/components/button.html
假設用戶輸入字符串true
或false
,則可以使用以下命令將其轉換為boolean
:
boolean value = Boolean.parseBoolean(idJTextField.getText());
JTextField
旨在提供String
。 因此,除非您希望用戶在文本字段(或將解析為布爾值的任何字符串)中輸入true
或false
,否則會有更好的選擇
JCheckBox
,通常用於切換設置,例如true-false JRadioButton
(每個設置一個,因此在這種情況下兩個) 這里是指向相應的Swing教程的鏈接,其中包含有關如何使用這些按鈕的示例
但是,如果您真的想使用文本字段,則應該從中獲取文本並使用例如Boolean.valueOf
進行解析。
只要輸入的值始終為true或false,就可以使用布爾值;
boolean value = Boolean.parseBoolean(enSuiteJTextField.getText());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.