如何在 JavaFX 8 中向 TableView 标头单元格添加工具提示
2022-09-03 09:50:37
有谁知道如何将工具提示添加到 TableView 中的列标题?
有很多地方解释了如何将工具提示添加到数据单元格,但我没有找到将工具提示添加到标题的方法。
使用工具ScenicView,我可以看到标题是TableColumnHeader对象内的标签,但似乎它不是公共对象。
有什么建议吗?
有谁知道如何将工具提示添加到 TableView 中的列标题?
有很多地方解释了如何将工具提示添加到数据单元格,但我没有找到将工具提示添加到标题的方法。
使用工具ScenicView,我可以看到标题是TableColumnHeader对象内的标签,但似乎它不是公共对象。
有什么建议吗?
TableColumn<Person, String> firstNameCol = new TableColumn<>();
Label firstNameLabel = new Label("First Name");
firstNameLabel.setTooltip(new Tooltip("This column shows the first name"));
firstNameCol.setGraphic(firstNameLabel);
这是对James_D的扩展答案(我没有评论的声誉):
要使标签与 text 连接列的属性,并且只隐藏原始文本,因此它不会弄乱表格功能的其余部分:
nameLabel.textProperty().bindBidirectional(textProperty());
nameLabel.getStyleClass().add("column-header-label");
nameLabel.setMaxWidth(Double.MAX_VALUE); //Makes it take up the full width of the table column header and tooltip is shown more easily.
css:
.table-view .column-header .label{
-fx-content-display: graphic-only;
}
.table-view .column-header .label .column-header-label{
-fx-content-display: text-only;
}