Вы устанавливаете данные как Color
blackRadioButton.setUserData(Color.BLACK);
redRadioButton.setUserData(Color.RED);
greenRadioButton.setUserData(Color.GREEN);
blueRadioButton.setUserData(Color.BLUE);
Но вы пытаетесь привести их как Text
(javafx.scene.text.Text) colorToggleGroup.getSelectedToggle().getUserData();
Чтобы исправить это, вы можете использовать оператор switch или несколькоif заявления, чтобы установить sample
объект в зависимости от того, какой цвет выбран.Пример оператора if:
if ((Color) colorToggleGroup.getSelectedToggle().getUserData() == Color.BLUE) {
sample = new Text(50, 300, "Something");
}
В качестве альтернативы вы можете установить данные для переключателей как Text
, например:
blueRadioButton.setUserData(new Text(50, 300, "Something"));