我想在按下单选按钮时关闭滑块,并在按下另一个按钮时将它们打开:
无论如何,当我点击关闭时,我希望无法选择标签,滑块和文本字段。当你点击Toggle on时,你可以再次选择滑块等。
我知道我需要使用ToggleGroup,但不确定如何切换滑块。
答案 0 :(得分:2)
我可能会为这个UI使用单个CheckBox而不是多个单选按钮,然后您可以将滑块窗格的disable属性绑定到CheckBox的selected属性,但我只是在这里为UI提供答案你已经展示了。
import javafx.application.Application;
import javafx.beans.binding.Bindings;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class ToggleSetup extends Application {
@Override
public void start(Stage stage) throws Exception {
RadioButton on = new RadioButton("on");
RadioButton off = new RadioButton("off");
ToggleGroup toggleState = new ToggleGroup();
on.setToggleGroup(toggleState);
off.setToggleGroup(toggleState);
toggleState.selectToggle(on);
VBox sliderPane = new VBox(
10,
new Slider(),
new Slider(),
new Slider()
);
sliderPane.disableProperty().bind(
Bindings.equal(off, toggleState.selectedToggleProperty())
);
VBox layout = new VBox(10, on, off, sliderPane);
layout.setPadding(new Insets(10));
stage.setScene(new Scene(layout));
stage.show();
}
public static void main(String[] args) { launch(args); }
}