Java Reference
In-Depth Information
PITFALL: (continued)
An even easier way to avoid these problems is to simply use int arguments, as in
the following:
purple = new Color(127, 0, 127);
(You may feel that the values of 127 should be replaced by 128 , but that is a minor
point. You are not likely to even notice the difference in color between, say, 127 red
and 128 red.)
In any fi nal code produced, these float numbers should normally be replaced by
defi ned constants, such as
public static final float RED_VALUE = ( float )0.5;
public static final float GREEN_VALUE = ( float )0.0;
public static final float BLUE_VALUE = ( float )0.5;
Note that even though the defi ned constants are specifi ed to be of type float , you
still need a type cast.
The JColorChooser Dialog Window
The class JColorChooser can be used to produce a dialog window that allows you
to choose a color by looking at color samples or by choosing RGB values. The static
method showDialog in the class JColorChooser produces a window that allows the
user to choose a color. A sample program using this method is given in Display 18.20.
The statement that launches the JColorChooser dialog window is the following:
sampleColor =
JColorChooser.showDialog( this , "JColorChooser", sampleColor);
When this statement is executed, the window shown in the second GUI picture in
Display 18.20 is displayed for the user to choose a color. Once the user has chosen a color
and clicked the OK button, the window goes away and the chosen color is returned as
the value of the JColorChooser.showDialog method invocation. So, in this example,
the Color object returned is assigned to the variable sampleColor . If the user clicks the
Cancel button, then the method invocation returns null rather than a color.
The method JColorChooser.showDialog takes three arguments. The first
argument is the parent component, which is the component from which it was
launched. In most simple cases, it is likely to be this , as it is in our example. The
second argument is a title for the color chooser window. The third argument is the
initial color for the color chooser window. The window shows the user samples of what
the color he or she chooses will look like. The user can choose colors repeatedly, and
each will be displayed in turn until the user clicks the OK button. The color displayed
when the color chooser window first appears is that third argument.
The color chooser window has three tabs at the top labeled Swatches , HSB , and
RGB . This gives the user three different ways to choose colors. If the Swatches tab is
clicked, the window displays color samples for the user to choose from. This is the
 
Search WWH ::




Custom Search