JMetro
maven依赖
<dependency>
<groupId>org.jfxtras</groupId>
<artifactId>jmetro</artifactId>
<version>11.6.16</version>
</dependency>
新的控件样式
TabPane“带有下划线”
TabPane的样式与标准现有样式不同。 您可以使用现有样式,或者如果将underlined
样式类添加到TabPane中,则将获得此新样式。 在下面,您可以看到此新样式和默认样式的屏幕截图:
![](https://lcpsky.top/zb_users/theme/tpure/style/images/lazyload.png)
TabPane标准Light JMetro样式
TabPane标准Dark JMetro样式
TabPane“强调”浅JMetro样式![](https://lcpsky.top/zb_users/theme/tpure/style/images/lazyload.png)
TabPane“强调”深色JMetro样式
import static jfxtras.styles.jmetro.JMetroStyleClass.UNDERLINE_TAB_PANE;
import static jfxtras.styles.jmetro.JMetroStyleClass.addIfNotPresent;
//Light JMetro样式
JMetro jMetro = new JMetro(Style.LIGHT);
jMetro.setScene(scene);
//TabPane“强调”浅JMetro样式
addIfNotPresent(tabPane.getStyleClass(), UNDERLINE_TAB_PANE);
RangeSlider
RangeSlider是ControlsFX的控件。
此控件基本上是一个滑块,可让您定义“较低”和“较高”的值。
RangeSlider默认的Modena样式对于JMetro样式,我需要RangeSlider拇指不是圆形的。 但是,ControlsFX RangeSlider中存在一个错误,该错误不允许拇指为非圆形。 要修复此问题,JMetro将一个新的自定义外观用于RangeSlider,在设置JMetro时默认应用该外观。
我将为ControlsFX创建PR,以修复其Java 8和Java 11版本上的此错误。 希望它获得批准后,我将删除此JMetro Skin,因为将不再需要它。
以下是具有JMetro样式的RangeSlider:
RangeSlider轻JMetro风格
RangeSlider深色JMetro风格由于模块所施加的限制,因此无法在JMetro Java 11版本中为RangeSlider定制皮肤(将需要使用不可用的类)。 这将在批准并合并ControlsFX java 11版本的PR后解决。
使用单元格的控件的交替行颜色
交替的行颜色样式已添加到TreeTableView,TableView,ListView和TreeView。
这种样式的目的是使这些控件的数据更易于阅读,这在数据量大的TreeTableView,TableView,ListView或TreeView上非常有用,因为这些行的宽度很大,并且您的眼睛很难分辨出哪个单元格属于哪些行。
下面是仅TreeTableView的这种样式:
TreeTableView交替的行颜色样式–浅色主题
TreeTableView交替的行颜色样式–深色主题要设置此样式,请向控件中添加样式类alternating-row-colors
。 如果不存在该样式类,则控件将具有普通(无交替的行颜色)样式。
调整现有样式
调整后的微调风格
旧的Spinner样式已经过调整。 这是新样式的屏幕截图:
微调新的Light JMetro风格
微调新的Dark JMetro风格其他变化
以下是此版本中其他更改的完整列表:
在工具栏内时向菜单按钮添加样式;
在工具栏中添加SplitMenuButton的样式;
当菜单按钮在ToolBar内且TooBar尚未聚焦时,请删除菜单按钮周围的边框;
缺少ToggleButton的“灯光” /工具栏样式(我们已经有了Button灯光样式)。 这与Light主题无关。 这是一种既存在于“黑暗与光明”主题中又具有较少装饰的样式,因此看起来与其容器(不那么突出)更加“整合”。
将默认的浅色主题背景更改为灰色调。 与让应用程序在默认情况下看起来全是白色相比,具有层次感并且不让眼睛疲劳。