Java fx更改字符串的颜色

Java fx更改字符串的颜色,java,javafx,Java,Javafx,在我的程序中,我必须通过单击单选按钮来更改示例字符串的颜色。但我每次点击都会出错。我一直在犯这个错误。我还使用efxclipse来编写此代码 原因:java.lang.ClassCastException: javafx。graphics@10.0.2/无法将javafx.scene.paint.Color强制转换为 javafx。graphics@10.0.2/javafx.scene.text.text位于 employee.view.MainController.colorRadioBut

在我的程序中,我必须通过单击单选按钮来更改示例字符串的颜色。但我每次点击都会出错。我一直在犯这个错误。我还使用efxclipse来编写此代码

原因:java.lang.ClassCastException: javafx。graphics@10.0.2/无法将javafx.scene.paint.Color强制转换为 javafx。graphics@10.0.2/javafx.scene.text.text位于 employee.view.MainController.colorRadioButtonSelectedMainController.java:83 包employee.view

将数据设置为颜色

但是你试着把它转换成文本

若要解决此问题,可以使用switch语句或多个if语句来设置示例对象,具体取决于选择的颜色。示例if语句:

if ((Color) colorToggleGroup.getSelectedToggle().getUserData() == Color.BLUE) {
    sample = new Text(50, 300, "Something");
}
或者,您可以将单选按钮的数据设置为文本,例如:

blueRadioButton.setUserData(new Text(50, 300, "Something"));

你能更新标题,使之与你的问题更相关吗?
(javafx.scene.text.Text) colorToggleGroup.getSelectedToggle().getUserData();
if ((Color) colorToggleGroup.getSelectedToggle().getUserData() == Color.BLUE) {
    sample = new Text(50, 300, "Something");
}
blueRadioButton.setUserData(new Text(50, 300, "Something"));