DOC-03-18 滑动条(Slider)

在本章中你将会学习如何在JavaFX应用程序中使用滑动条(Slider)来显示一个区间范围内的数据并与之交互。

Slider控件由一个滑轨(Track)和一个可拖放的滑块(Thumb)组成。它也可以包括多个刻度标记(Tick
Mark)和刻度标签(Tick Label),用于表示数值区间范围。图18-1展示了一个典型的滑块及其主要组成元素。

18–1 滑块的主要组成元素

3-18-1 slider-details

创建一个Slider

不妨花点时间看看例18-1中的代码片段,它产生了一个如图18-1中所示的Slider。

18–1 创建一个Slider

setMin和SetMax方法分别定义了Slider所表示的数据的最小和最大值。setValue方法指定了Slider的当前值,当前值应该永远比最大值要小并且比最小值要大。在程序启动时将使用此方法来定义滑块的所在位置。

setShowTickMarks和setShowTickLabels方法都需要传递Boolean型参数,它们定义了Slider的外观。在例18-1中,刻度的Mark和Label都被启用了。另外主刻度Mark之间的单位距离被设置为了50,而每两个主刻度之间都被设置分为了5个小刻度。你可以调用setSnapToTicks方法并设置参数值为true,这样可以使Slider所表示的值永远对齐到刻度标记之上。

setBlockIncrement方法定义了当用户点击Track时Thumb的移动距离。在例18-1中该值被设置为了10,也就是说每次用户点击Track时,Thumb将会向点击位置的方向移动10个单元。

在图片展示程序中使用Slider

下面来试试例18-2。这个应用程序使用了3个Slider来编辑图片的渲染效果。每个Slider会调整一个特定的视觉效果:不透明度(Opacity)、棕褐色调值(Sepia Tone)、缩放因子(Scaling Factor)。

18–2  带有三个Slider的程序

3-18-2 slider-cappuccino

例18–2 展示了这个应用程序的源码。

18–2 Slider样例