JColourChooser
©1996-2012 Roedy Green, Canadian Mind ProductsThis view this page, you should have a recent Java installed,
preferably 32-bit
JRE (
Java Runtime Environment)
1.7.0_04.
The
JDisplay Java Applet
displays the large program listings on this web page.
JDisplay requires an up-to-date
browser and Java version
1.5+, preferably
1.7.0_04.
If you can’t see the listings, or if you just want to learn
more about
JDisplay, click
here for help.
This essay does not describe an
existing computer program, just one that should exist. This
essay is about a suggested student project in
Java programming. This essay gives a
rough overview of how it might work. I have no source, object,
specifications, file layouts or anything else useful to implementing this
project.
This project outline is not like the artificial, tidy little problems you
are spoon-fed in school, when all the facts you need are included, nothing
extraneous is mentioned, the answer is fully specified, along with hints
to nudge you toward a single expected canonical solution. This project is
much more like the real world of messy problems where it is up to you to
fully the define the end point, or a series of ever more difficult versions
of this project, and research the information yourself to solve them.
Everything I have to say to help you with this project is written below.
I am not prepared to help you implement it; or give you any additional
materials. I have too many other projects of my own.
Though I am a programmer, I don’t do people’s homework for
them. That just robs them of an education.
You have my full permission to implement this project in any way you please
and to keep all the profits from your endeavour.
Please do not email me about this project without reading the disclaimer above.
The
JDisplay (
Java Display) Java Applet displays the large program listings on this web page.
JDisplay requires Java version
1.5 or later, preferably
1.6.0_12. If you can’t see
the listings, or if you just want to learn more about
JDisplay, click
here for help.
This project is fairly easy, just tedious since the UI (User Interface) has so many widgets and so many minor interactions between
them. The intent of the project is to create a replacement for Sun’s JColorChooser.
Here is a mockup of what the new JColourChooser might look
like. It gets you perhaps 80% of the way there.
If, JColourChooser, the above Color chooser Java Applet (that can also be run as an application) does not work…
- If Copy/Paste (Ctrl-C/Ctrl-V) do not work, you can turn them back on by
modifying your java.policy file. This is not for the novice or faint of heart. instructions
Your alternative is to download this program and run it without a browser.
- Often problems can be fixed simply by clicking the reload button on your browser.
- Make sure you have both JavaScript and Java enabled in your browser.
- This Java Applet (that can also be run as an application) needs 32-bit (not 64-bit) Java 1.5 or later.
For best results use the latest 1.7.0_04.
If you have both 32 and 64-bit JVMs installed,
in the Java Control Panel, configure your 32-bit java.exe as the user JVM
and your 64-bit java.exe as the system JVM.
You also need a recent browser.
- It works under any operating system that supports Java e.g. W2K/XP/W2003/Vista/W7-32/W7-64/Linux/Ubuntu/Solaris/OSX
- You should see the Applet hybrid above looking much like this screenshot. If you don’t, the following hints should help you get it working:
- Especially if this Applet hybrid has worked before, try clearing the browser cache and rebooting.
- To ensure your Java is up to date, check with Wassup. First, download it and run it as an application independent of your browser, then run it online as an Applet to add the complication of your browser.
- If the above Applet hybrid does not work, check the Java console for error messages.
- If the above Applet hybrid does not work, you might have better luck with the downloadable version available below.
- If you are using Mac OS X and would like an improved Look and Feel, download the QuaQua look & feel from randelshofer.ch/quaqua. UnZip the contained quaqua.jar and install it in ~/Library/Java/Extensions or one of the other ext dirs.
- If you are using Microsoft Internet Explorer 7, 8 or 9, try another browser. Seriously. Microsoft has taken great pains, over and over, to screw up Java and every other multi-platform standardisation.
- If you are using Microsoft Internet Explorer 7, 8 or 9, you must click to allow blocked content permission for Active X to run. This also gives permission to Java to run. Click the Information bar, and then click Allow blocked content. Unfortunately, this also allows dangerous ActiveX code to run. However, you must do this in order to get access to perfectly-safe Java Applets running in a sandbox. This is part of Microsoft’s war on Java. Don’t put up with it! Use a different browser.
- If you are using Microsoft Internet Explorer 9, makes sure the Java Plug-In SSV helper add-in is installed and enabled.
If it is not, try reinstalling the Java JRE.
- If you have Windows 7 64-bit
and Internet Explorer 64-bit,
in theory you can use 64-bit Java,
but I never been able to get it to work.
- Try upgrading to a more recent version of your browser, or try a different browser e.g. Firefox, SeaMonkey, Safari or Avant.
- If you still can’t get the program working click HELP for more detail.
- If you can’t get the above Applet hybrid working after trying the advice above and from the HELP button below, have bugs to report or ideas to improve the program or its documentation, please send me an email at
.
Get New Java Get New Browser

How does it differ from Sun’s JColorChooser?
- Under programmer control, it lets the user select the foreground or background colour, or both
simultaneously.
- It always displays the resulting colour in 6 ways:
- 6-digit hex RGB (Red Green Blue) ready to insert in CSS (Cascading Style Sheets), HTML (Hypertext Markup Language) or Java
- as the closest X11 named colour.
- 3-digit decimal R-G-B
- 3-digit decimal H-S-B
- 2-digit hex R-G-B
- 2-digit hex H-S-B
- There are no palettes since real estate is tight, but you could add them with a tabbed pane.
- You can enter the colour number by:
- Wiggling the RGB or HSB (Hue Saturation Brightness) JSliders
- Changing the hex or decimal values with JSpinner.
- Keying new values for the hex or decimal values.
- Selecting a named colour from a drop-down box.
- It takes up considerably more screen real estate, perhaps too much.
Hints On Implementation
Since there are so many widgets, the code will become very repetitive, i.e. error prone. The trick is to use arrays
of Components, e.g. index [0] for background and [1] for foreground. That way you can use
common code for background and foreground. Similarly index R G B components as [0] [1] [2]. and H S B as [0] [1] [2].
For slower machines, you might want to configure some of the updates to happen only after the slider stops moving
rather than continuously.
Check out how JColorChooser works and the colour chooser in FontShowerAWT.
Here is the code I used to create this mockup:
Learning More
Oracle’s Javadoc on
JColorChooser class : available:
  |
You can get the freshest copy of this page from: |
or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror) |
| http://mindprod.com/project/jcolourchooser.html |
J:\mindprod\project\jcolourchooser.html |
 | Please email your feedback for publication,
letters to the editor, errors, omissions, typos, formatting errors, ambiguities, unclear wording,
broken/redirected link reports, suggestions to improve this page or comments to
Roedy Green :
 .
If you want your message, your name or email kept confidential, not considered for public posting, please explicitly specify that.
Unless you state otherwise, I will treat your message as a letter to the editor that I may or may not publish in the feedback section. After that, it will be too late to retract it.
If you disagree with something I said, please quote it and cite the web page where you found it, tell me why you think it is wrong,
and, if possible, provide some supporting evidence. Threatening to kill me or spouting obscenities has yet to persuade me to change my mind. |
| Canadian Mind Products |
|
| mindprod.com IP:[65.110.21.43] |
| view Blog | Your face IP:[38.107.179.213] |
| Feedback | You are visitor number
11. | |