Java Reference
In-Depth Information
Listing 12-6.
ChangeListener for BoundedRangeModel, JSlider, and JProgressBar
import javax.swing.*;
import javax.swing.event.*;
public class BoundedChangeListener implements ChangeListener {
public void stateChanged(ChangeEvent changeEvent) {
Object source = changeEvent.getSource();
if (source instanceof BoundedRangeModel) {
BoundedRangeModel aModel = (BoundedRangeModel)source;
if (!aModel.getValueIsAdjusting()) {
System.out.println ("Changed: " + aModel.getValue());
}
} else if (source instanceof JSlider) {
JSlider theJSlider = (JSlider)source;
if (!theJSlider.getValueIsAdjusting()) {
System.out.println ("Slider changed: " + theJSlider.getValue());
}
} else if (source instanceof JProgressBar) {
JProgressBar theJProgressBar = (JProgressBar)source;
System.out.println ("ProgressBar changed: " + theJProgressBar.getValue());
} else {
System.out.println ("Something changed: " + source);
}
}
}
Customizing a JProgressBar Look and Feel
Each installable Swing look and feel provides a different
JProgressBar
appearance and set of
default
UIResource
values. Figure 12-15 shows the appearance of the
JProgressBar
component
for the preinstalled set of look and feel types.
Table 12-6 shows the set of available
UIResource
-related properties for a
JProgressBar
.
It has 15 different properties.
Table 12-6.
JProgressBar UIResource Elements
Property String
Object Type
ProgressBar.background
Color
ProgressBar.border
Border
ProgressBar.cellLength
Integer
ProgressBar.cellSpacing
Integer
ProgressBar.cycleTime
Integer
ProgressBar.font
Font
ProgressBar.foreground
Color