(翻译)第十一回 JavaFX2.0开关按钮ToggleButton
原文地址http://download.oracle.com/javafx/2.0/ui_controls/toggle-button.htm
?
?ToggleButton类代表了可以通过JavaFX API创建的另一类按钮。 2个或更多的这种按钮被加入一个组中,但是每次只能有一个被选中,或者一个都没有。?Figure 5-1是在一个组中有3个开关按钮的应用截图。这个应用根据哪个开关按钮别按下来决定绘制何种颜色的矩形。

可以通过ToggleButton类的3个构造方法的任意一个来创建开关按钮。见Example 5-1.
Example 5-1 Creating Toggle Buttons
把Toggle Button加入组?
ToggleButton类的实现和RadioButton类实现相当类似。不过和单选框不同的是,开关按钮并不要求每次必须最少有一个按钮被选中在组中。也就是说,点击选中的开关按钮会使其取消选中,但是点击组中的单选按钮没任何反应。t花点时间看下?Example 5-2中的代码吧.
Example 5-2 Combining Toggle Buttons in a Group
Figure 5-2 Three Toggle Buttons in a Group
Description of "Figure 5-2 Three Toggle Buttons in a Group"一般使用开关按钮的组来为每个按钮分配特定行为。下一部分将解释如何使用这些开关按钮改变矩形的颜色。
设置行为
ToggleButton类从Node?类继承了setUserData方法,该方法可以让你给任意选中的选项赋特定的值。在?Example 5-3中,用户数据指明了要用什么颜色来绘制矩形。?
Example 5-3 Setting User Data for the Toggle Buttons
Figure 5-3 Using Toggle Buttons to Paint a Rectangle
Description of "Figure 5-3 Using Toggle Buttons to Paint a Rectangle"查看 ToggleButtonSample.java文件检查应用的完整代码。
美化Toggle Button可以通过为开关按钮应用CSS来改善应用的视效。在JavaFX 2.0应用中使用CSS和在HTML中使用几乎一样,因为它们都基于相同的CSS规范。Example 5-4使用
setStyle方法改变了开关按钮的?-fx-base?CSS熟悉。Example 5-4 Applying CSS Styles to Toggle Buttons
Figure 5-4 Painted Toggle Buttons
Description of "Figure 5-4 Painted Toggle Buttons"?你可以尝试
ToggleButton类的其他CSS属性,或者应用动画、转换、?JavaFX API中的各种视效。?