基本上,我正在尝试为酒店提供预订表格,有两种选择:要么是带双人床的“情侣房”,里面不能有其他床,要么一间带分隔床的房间,最多可容纳 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
提交
取消