我正在构建一个涉及JavaFX中TextArea
和TextField
的应用程序。我想要包含更改ColorPicker
的字体颜色的功能。通过执行以下操作,我能够非常轻松地自定义背景颜色
backgroundColorPicker.setOnAction(event -> {
Color color = backgroundColorPicker.getValue();
Background background = new Background(new BackgroundFill(color, CornerRadii.EMPTY, Insets.EMPTY));
Region region = ( Region ) console.lookup( ".content" );
region.setBackground(background);
input.setBackground(background);
});
我如何更改字体颜色?到目前为止我只有
foregroundColorPicker.setOnAction(event -> {
Color color = foregroundColorPicker.getValue();
});
我一直无法找到改变字段字体颜色的方法。
答案 0 :(得分:1)
我能够通过使用颜色值并将其转换为CSS来解决这个问题,然后将CSS应用到字段中。
foregroundColorPicker.setOnAction(event -> {
Color color = foregroundColorPicker.getValue();
double red = color.getRed() * 255;
double green = color.getGreen() * 255;
double blue = color.getBlue() * 255;
double alpha = color.getOpacity() * 255;
String colorString = String.format("-fx-text-fill: rgba(%f,%f,%f,%f) ;", red, green, blue, alpha);
console.setStyle(colorString) ;
input.setStyle(colorString);
});