gpt4 book ai didi

JavaFX 将按钮相互绑定(bind)

转载 作者:行者123 更新时间:2023-12-02 05:01:36 24 4
gpt4 key购买 nike

不确定我的标题问题是否正确。

我想要实现的是让一个按钮创建一个车辆对象。然后有一个不同的按钮调用方法 board (这只会更新一些字段)。

一般来说:

一个按钮即可创建对象 Vehicle 的实例。第二个按钮用于调用此实例上的方法。

        btnCar.setOnAction(new EventHandler<ActionEvent>(){
public void handle(ActionEvent event){
Vehicle C = new Car(amountPass, "hej", "hej");
}
});
btnEmbark.setOnAction(new EventHandler<ActionEvent>(){
public void handle(ActionEvent event){
ferry.embark(C);
}
});

谢谢!

最佳答案

有几种方法可以实现这一点,我首先想到的是使用 JavaFX 属性:

ObjectProperty<Object> object = new SimpleObjectProperty<>();

Button button1 = new Button("create");
button1.setOnAction(ev -> object.set(new Object()));

Button button2 = new Button("magic");
button2.setOnAction(ev -> object.get().hashCode());
button2.disableProperty().bind(Bindings.isNull(object));

通过绑定(bind),我们确保只有在创建并存储自定义对象时才能触发第二个按钮。

另一种方法是编写 Button 的子类,与另一个 Button 进行通信。这是个人喜好问题。

关于JavaFX 将按钮相互绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28222867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com