6

Java FX Scen Builder 包含一种非常特殊形式的切换按钮。几个按钮在视觉上由一条小的垂直线连接并分隔:

在此处输入图像描述

我想知道这是怎么做到的。有人知道吗?

4

2 回答 2

5

这是一个ToggleButton的HBox,都具有相同的ToggleGroup和自定义 css。

在Ensemble示例应用程序(Ensemble 将其称为药丸按钮)中有一个显示类似控制组的源代码示例。我认为 Ensemble 示例源许可证是 BSD,因此您应该能够在您的应用程序中使用它。转到 Ensemble,在 Ensemble 示例应用程序中搜索,单击 Pill Button 示例上的“保存 NetBeans 项目... ”按钮,然后在 NetBeans 中打开生成的项目,完整代码、css 和支持图像文件将包含在项目。Pill

于 2012-08-24T17:30:19.410 回答
1

作为自定义 CSS 的一种更简单的替代方案,Controls FX 项目提供了分段按钮控件,它允许像 OP 所要求的那样对按钮进行可视化分组。

它是 BSD 许可的,所以我想在大多数情况下可以安全使用。该库还有许多其他有用且设计良好的控件。

分段按钮如下所示:

在此处输入图像描述

使用非常简单:

ToggleButton tb1 = new Button("Red");
ToggleButton tb1 = new Button("Green");
ToggleButton tb1 = new Button("Blue");

SegmentedButton seg = new SegmentedButton();
seg.getButtons().addAll(tb1,tb2,tb3);
hbox.getChildren().add(seg);

它允许指定选择是否应该互斥。对于第二个 bwhaviour(非互斥),将分段按钮的组设置为 null :

seg.setToggleGroup(null);

来源: http ://controlsfx.bitbucket.org/org/controlsfx/control/SegmentedButton.html

于 2015-08-05T14:17:21.323 回答