3

我遇到了这个问题,我有一个 JavaFX 应用程序,它使用由 TableColumns 组成的 Tableview 并由自定义 css 设置样式。

一切都很好,我可以顺利地将数据添加到我的表格/单元格等中。但是,如果我只想向用户展示部分数据,那么 CSS 解决方案将是最佳的(而不是操纵数据以满足用户的要求)。

我一直在研究标准 css,发现“显示:无”将是隐藏选定行但保持数据完整的最佳解决方案,但似乎不支持 JavaFX。

除了手动修改单元格数据以满足需求的黑客方法之外,我似乎找不到一个好的解决方案。

我已经使用 setCellFactory 来进行测试。突出显示不同颜色的文本或单元格,这很好用。但是,在不破坏我的应用程序整体体验的情况下不显示单元格的解决方案似乎是可行的。

有没有人遇到过类似的问题并找到了实用的解决方案?

4

2 回答 2

3

如果你想使用 CSS

每个Node都有一个visibilitycss 属性
JavaFX CSS 参考
所以我会尝试:

visibility: hidden;

但是我不知道是隐藏整行还是什么,如果有麻烦,您可以将内部隐藏Label在每个单元格中


编辑:

那么这个解决方法呢:

-fx-text-fill: transparent;

对于每一行或Label
这“隐藏”文本但行将保持可见
未测试,只是一个想法


编辑(2):

这可以帮助:

-fx-cell-size: 0;

对于行中的每个单元格
但这是您自己想法的一部分

于 2015-06-24T12:52:21.197 回答
1

没有-fx-visibilityCSS 属性,但您可以通过组合使用来解决它,例如:

-fx-pref-width: 0;
-fx-opacity: 0;
于 2020-03-26T12:12:55.097 回答