добавить цвет родительского элемента к его элементам - PullRequest
0 голосов
/ 25 августа 2018

Я бы хотел установить разные цвета для разных предметов. В частности, у меня будет разный цвет для разных родителей, и для каждого родителя установите одинаковый цвет для своих предметов. Важно, чтобы ситуация с цветом не менялась, когда я выбираю мышью элемент.

Я нашел частичное решение, подобное этому, с использованием css:

List<String> allTreeItemStyles = Arrays.asList("style1", "style2", "style3"); 
TreeView<MyTreeType> tree = new TreeView<>();
tree.setCellFactory(tv ->  new TreeCell<MyTreeType>() {
    @Override
    public void updateItem(MyTreeType item, boolean empty) {
        super.updateItem(item, empty);
        getStyleClass().removeAll(allTreeItemStyles);
        if (empty) {
            setText("");
        } else {
            setText(...); // appropriate text for item
            String styleClass = ... ; // choose style class for item
            getStyleClass().add(styleClass);
        }
    }
});

Во внешнем css у меня это:

.tree-cell.style1 {
   /* ... */
}

.tree-cell.style2 {
  /* ... */
}

/* etc */
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...