如何在JavaFX中为组布局添加背景颜色?

2023-11-22

我需要向 JavaFX 中的组添加背景颜色。我尝试用 CSS 添加它,但由于某种原因它不起作用。 CSS 适用于所有其他布局管理器,但不适用于 Group。我该怎么办?


Solution

替换您的使用Group with a Pane一切都会表现得类似,只不过您将获得使用 CSS 设置窗格背景样式等功能的能力。

背景

如果您想使用 CSS 设计父节点的样式,请使用派生自的内容Region:

Region 是所有基于 JavaFX Node 的 UI 控件和所有布局容器的基类。它是一个可调整大小的父节点,可以通过 CSS 设置样式。它可以有多个背景和边框。它旨在支持与 JavaFX 相关的尽可能多的背景和边框 CSS3 规范。

Group 被设计为非常轻量级的父级,它会产生最小的处理和存储开销,因此它仅支持非常少的 CSS 属性(并且不支持 CSS 背景)。

Regions另一方面,提供广泛的 CSS 样式功能。

A Pane是一个具体的 Region 子类,其行为最像一个组(例如,它不执​​行隐式布局,并且您手动在窗格中布局节点)。

替代解决方案

此替代解决方案允许您将“背景”节点添加到组中。它在代码中工作,而不是 CSS。

添加到组中的项目按照绘画算法从后到前分层。因此,添加一个彩色矩形作为组中的第一项,该矩形将有效地形成组的背景。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在JavaFX中为组布局添加背景颜色? 的相关文章