[英]Java Swing, Booleans and textfields
這是我正在進行的項目的當前代碼。 目前我正在嘗試將值與textFields匹配,這是在按下某些按鈕時產生的。 例如,當您單擊開始列車時,門打開將更改為已關閉,列車准備將更改為是,“列車開啟”將更改為是,列車移動將更改為否。我對java swing非常新。
我試圖使用布爾值和If語句來生成消息,如果值為true或false。 然后我將trainPowerField,trainMovingField,trainDoorsField和trainReadyField連接到textFields,將其作為textFields的值。 但我現在遇到的問題是:
FirstFrame.java:120:錯誤:沒有為JTextField(boolean)找到合適的構造函數bottomRight.add(trainReady = new JTextField(trainReadyField));
對於每個textField。
我不明白我怎么沒有合適的構造函數? 我也知道我已經讓這比我應該做的更復雜,但是不明白其他任何方式去做。
編輯*由於單一原因刪除代碼。
沒有JTextField
構造函數接受一個boolean
參數,現在它不想將它轉換為String
值。 你需要明確地做。 嘗試使用
new JTextField(Boolean.toString(trainReadyField));
你需要為其他boolean
值( trainPowerField
等)做同樣的事情。
JTextField
構造函數需要一個字符串,而不是一個布爾值,請嘗試以下所有字符串:
new JTextField(Boolean.toString(trainReadyField))
或者您甚至可以像轉換一樣編寫自己的“toString”:
new JTextField(trainReadyField? "T" : "F"))
為了更好的代碼可維護性,您應該編寫自己的函數
public static String boolToText(boolean b) {
if (b) return "T";
return "F";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.