JavaFx 动态设置 Tableview 单元格背景颜色

标签 java javafx-2

我想在单击“添加”按钮时动态地向行的颜色单元格添加颜色。我无法更改单元格的背景颜色。请参阅图片以供引用。 我无法在代码的帮助下实现这一目标。 提前感谢您的帮助。

向表中添加值的片段:

     @FXML
     private void addEntity() {

      data.add(new Inventory(codeTemp.getText(), articleNameTemp.getText(), Integer.parseInt(amountTemp.getText()), dcTemp.isSelected() ? true:false, stTemp.isSelected()?true:false, Utilities.toRGBCode(colorTemp.getValue()), informationTemp.getText(), data.size()+1));
      inventoryTable.setItems(data);

     }

enter image description here

最佳答案

在列回调的帮助下完成。

        Callback<TableColumn<Inventory, String>, TableCell<Inventory, String>> cellFactory =
        new Callback<TableColumn<Inventory, String>, TableCell<Inventory, String>>() {
            public TableCell call(TableColumn p) {
                TableCell cell = new TableCell<Person, String>() {
                    @Override
                    public void updateItem(String item, boolean empty) {
                        super.updateItem(item, empty);
                        setText(empty ? null : getString());
                        setStyle("-fx-background-color:"+getString());
                    }

                    private String getString() {
                        return getItem() == null ? "" : getItem().toString();
                    }
                };


                return cell;
            }
        };

enter image description here

关于JavaFx 动态设置 Tableview 单元格背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25601448/

相关文章:

java - Maven 站点部署失败,SCP 连接被拒绝 - Windows

java - 即使没有注释,Junit 5也会在maven构建中执行测试

css - JavaFX 中样式的类型安全操作

javafx-2 - javafx 2-tableview动态列

sizeToScene 调用后的 JavaFX 舞台宽度/高度

Netbeans 中的 Java FX 编辑器

java - Spring的Lifecycle.stop()应该是同步的还是异步的?

java - 当我尝试使用调试器时会出现scanner.java选项卡

java - fxmlLoader.getController() 导致空指针异常?

java - 在 java 中获取字符串大小(没有可用的 Graphics 对象)