JAVAFX表视图包装文本字体颜色

时间:2016-03-17 06:00:41

标签: css javafx javafx-8

private TableColumn<FundedResearch, String> makeStringColumnRes(String columnName, String propertyName, int prefWidth) {
    TableColumn<FundedResearch, String> column = new TableColumn<>(columnName);
    column.setCellValueFactory(new PropertyValueFactory<FundedResearch, String>(propertyName));
    column.setCellFactory(new Callback<TableColumn<FundedResearch, String>, TableCell<FundedResearch, String>>() {
      @Override public TableCell<FundedResearch, String> call(TableColumn<FundedResearch, String> soCalledFriendStringTableColumn) {
        return new TableCell<FundedResearch, String>() {
            private Text text;
          @Override public void updateItem(String item, boolean empty) {

            super.updateItem(item, empty);
            if (item != null) {

                text=new Text(item.toString());
                text.setWrappingWidth(column.getWidth());
                text.setStyle("-fx-font-color:#FFFFFF");
                column.setStyle("-fx-font-color:#FFFFFF");
                this.setWrapText(true);
                setGraphic(text);
                setStyle("-fx-font-color:#FFFFFF");
            }
          }
        };
      }
    });
    if(prefWidth!=0){
    column.setPrefWidth(prefWidth);
    column.setMaxWidth(prefWidth);
    column.setMinWidth(prefWidth);
    }

    return column;
  }

我有这个方法被调用来制作表格列。我已将String包装到Cell以使所有文本可见。问题是我不能使字体颜色变白。分享您的想法。谢谢。 :) if statement中设置的那些样式是我到目前为止所尝试的。感谢

2 个答案:

答案 0 :(得分:1)

要使用的CSS属性不是wordcloud(data$State, data$Colleges, scale = c(4,1), colors = rep(c("green", "yellow", "red"), 9), rot.per=.5, ordered.colors=T)

如果应该是-fx-font-color。您可以在此处找到此信息:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssref.html#shape(从-fx-fill导航到支持颜色的第一个超类,在本例中为Text)。

如果没有合适的项目,你还需要处理这个案子。否则,当单元格为空时,仍会显示Shape。此外,每次text更改时都无需重新创建Text个对象:

item

答案 1 :(得分:0)

这个也行得正常。

text.setFill(Color.WHITE);

刚刚在几个小时前得到它