Я пытаюсь создать индивидуальный TreeView с помощью CellFactory и Css.Настройка Treecell: размещение значка стрелки
Это то, что я до сих пор:
Я хочу, чтобы центрировать стрелку так, чтобы она указывала на середину TreeCell.
Проблема в том, что я не знаю как. Я попробовал дополнение, но это только масштабирует значок.
Возможно, стоит упомянуть, что стрелка не является частью HBox, которую я загружаю, чтобы представлять treeCell.
Вот мой CSS:
.tree-cell{
-fx-content-display: CENTER;
-fx-position-shape: true;
-fx-background-color: linear-gradient(#c9e9d1 20%, #9dbda5 80%);
}
.tree-cell .tree-disclosure-node .arrow {
-fx-background-color: #facf46;
-fx-padding: 0.666666em; /* 4 */
-fx-shape: "M 0 -4 L 4 0 L 0 4 z";
-fx-content-display: center;
}
.tree-cell:expanded .tree-disclosure-node .arrow {
-fx-content-display: center;
-fx-background-color: #facf46,
-fx-rotate: 90;
}
.tree-cell:hover {
-fx-background-color: #dfffe7;
}
.tree-cell:selected{
-fx-background-color: #4f88da;
}
В этих двух ссылок, есть код, как я представляю TreCells по HBox:
Customizing TreeCells using cell factory JavaFX TreeView: setGraphic() for different levels of treeItem
Можете ли вы поделиться код? –
Редактировали, чтобы включить код. – AnagramOfJoans
Одним из способов, с помощью которого вы можете вертикально центрировать все элементы, является установка 'display: table' в родительском контейнере, который, я считаю, является' .tree-cell', а затем устанавливает 'display: table-cell, vertical-align: niddle' на всех его дочерних элементах. В любом случае, можно ли его просматривать на каком-либо веб-сайте, чтобы можно было отлаживать CSS? –