Sliders allow a user to interactively select one of a range of values by dragging the mouse. The following example demonstrates the use of the Slider component. It allows the user to select a value from 0 - 255 and displays the value in a Label component:
The BXML source for the example is as follows:
<boundedrange:Sliders title="Sliders" maximized="true"
xmlns:bxml="http://pivot.apache.org/bxml"
xmlns:boundedrange="org.apache.pivot.tutorials.boundedrange"
xmlns="org.apache.pivot.wtk">
<BoxPane styles="{verticalAlignment:'center'}">
<Slider bxml:id="slider" range="{start:0, end:255}" value="0"/>
<Label bxml:id="label"/>
</BoxPane>
</boundedrange:Sliders>
The Java source loads the BXML and attaches a SliderValueListener to the slider. When the slider value changes, the updateLabel() method is called to set the current value:
package org.apache.pivot.tutorials.boundedrange;
import java.net.URL;
import org.apache.pivot.beans.Bindable;
import org.apache.pivot.collections.Map;
import org.apache.pivot.util.Resources;
import org.apache.pivot.wtk.Label;
import org.apache.pivot.wtk.Slider;
import org.apache.pivot.wtk.SliderValueListener;
import org.apache.pivot.wtk.Window;
public class Sliders extends Window implements Bindable {
private Slider slider = null;
private Label label = null;
@Override
public void initialize(Map<String, Object> namespace, URL location, Resources resources) {
slider = (Slider)namespace.get("slider");
label = (Label)namespace.get("label");
slider.getSliderValueListeners().add(new SliderValueListener() {
@Override
public void valueChanged(Slider slider, int previousValue) {
updateLabel();
}
});
updateLabel();
}
private void updateLabel() {
label.setText(Integer.toString(slider.getValue()));
}
}
Next: Scroll Bars


