基本上,我正在嘗試為酒店提供預訂表格,有兩種選擇:要么是帶雙人床的“情侶房”,里面不能有其他床,要么一間帶分隔床的房間,最多可容納 4 張床。這是場景:https : //imgur.com/a/5GdgFAg我一直在嘗試制作一個文本字段“Nombre de lits”。只要選擇了單選按鈕“夫婦”,就應該禁用它。當我點擊單選按鈕“Lits separés”時,它應該被啟用。但即使我單擊該按鈕,文本字段仍處于禁用狀態。我一直試圖讓這個工作,但沒有運氣。這是我的代碼:package controleur;import java.time.LocalDate; import java.time.format.DateTimeFormatter;import accesBD.ClientDAO; import javafx.beans.binding.Bindings; import javafx.beans.binding.BooleanBinding; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.scene.control.Button; import javafx.scene.control.DatePicker; import javafx.scene.control.RadioButton; import javafx.scene.control.TextField; import javafx.scene.control.ToggleGroup; import metier.Client;public class ReservationControleur { private ClientDAO bd = new ClientDAO(); @FXML private TextField nom; @FXML private TextField prenom; @FXML private TextField nationalite; @FXML private DatePicker datedebut; @FXML private TextField numtel; @FXML private DatePicker datefin; @FXML private RadioButton couple; @FXML private RadioButton litss; @FXML private RadioButton douche; @FXML private RadioButton bain; @FXML private TextField nbrlits; @FXML private RadioButton standard; @FXML private RadioButton inclusive; @FXML private RadioButton vip; @FXML private Button valider; @FXML private Button anuuler; private ToggleGroup group = new ToggleGroup(); private ToggleGroup group1 = new ToggleGroup(); @FXML private void isClicked(ActionEvent event){ } public void initialize() { datedebut.setValue(LocalDate.now()); couple.setToggleGroup(group); couple.setSelected(true); litss.setToggleGroup(group); douche.setToggleGroup(group1); bain.setToggleGroup(group1); douche.setSelected(true); if(couple.isSelected()) nbrlits.setDisable(true); else nbrlits.setDisable(false); }任何人都可以幫忙嗎?
1 回答

MYYA
TA貢獻1868條經驗 獲得超4個贊
檢查選擇哪個 RadioButton 的代碼只執行一次 - 當 ReservationControleur 被初始化時,這不是你需要的。
每次選擇“情侶”RadioButton 時,您都希望將“nbrlits”TextView 的狀態更改為“禁用”,因此您需要將這兩個屬性綁定在一起。
改變這個:
if(couple.isSelected())
nbrlits.setDisable(true);
else
nbrlits.setDisable(false);
}
進入這個:
//set "nbrlits" to disabled state each time "couple" radiobutton is selected
nbrlits.disableProperty().bind(couple.selectedProperty());
添加回答
舉報
0/150
提交
取消