Unfortunately, Oracle has effectively decommitted Applets. This means you can no longer run the various CMP programs in a browser. You must download them and install them.
You must have the most recent Java
JRE (Java Runtime Environment) 1.8.0_112
32-bit or 64-bit. It no longer matters which browser you use.
The JDisplay Java Applet
displays the large program listings on this web page.
JDisplay requires an up-to-date
browser and Java version
1.8+, preferably 1.8.0_112.
If you can’t see the listings, or if you just want to learn
more about JDisplay, click
here for help.
Use Firefox for best results.
Oracle has effectively decommited Applets, so this Applet will no longer run online in your browser, but it is a hybrid you
can also download, install and run it on your own machine as standalone
application. It will start and run faster if you do that. It will also
work safely even if you have disabled Java in your browser.
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. Everything I have prepared to help you is right here.
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 by profession, 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 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 Oracle’s JColorChooser.
Here is a mockup of what the new JColourChooser might look like. It gets you perhaps 80% of the way there.
Java Requirements and Troubleshooting
is a Java Applet (that can also be run as an application)
to Color chooser.
You are welcome to install it on your own website.
If it 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.
In the Java Control Panel security tab,
click Start ⇒ Control Panel ⇒
Programs ⇒ Java ⇒ Security, configure medium security
to allow self-signed and vanilla unsigned applets to run.
If medium is not available, or if Java security is blocking you from running the program,
configure high security
and add http://mindprod.com
to the Exception Site List at the bottom of the security tab.
Often problems can be fixed simply by clicking the reload button on your browser.
Make sure the Java in your browser is enabled in the security tab of the Java Control panel.
Click Start ⇒ Control Panel ⇒
Programs ⇒ Java ⇒ Security ⇒
Enable Java Content in the browser.
This Java Applet (that can also be run as an application)
needs 32-bit or 64-bit Java 1.8 or later.
For best results use the latest 1.8.0_112 Java.
It works under any operating system that supports Java
e.g. W2K, XP, W2003, Vista, W2008, W7-32, W7-64, W8-32, W8-64, W2012, W10-32, W10-64, Linux, LinuxARM, LinuxX86, LinuxX64, Ubuntu, Solaris, SolarisSPARC, SolarisSPARC64, SolarisX86, SolarisX64 and OSX
You should see the Applet hybrid above looking much like this
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
UnZip the contained quaqua.jar
and install it in ~/Library/Java/Extensions
or one of the other ext dirs.
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.
Try upgrading to a more recent version of your browser,
or try a different browser e.g. Firefox, SeaMonkey, IE or Avant.
If you still can’t get the program working
click the red HELP button below for more detail.
If you can’t get the above Applet hybrid working
after trying the advice above and from the red HELP button below,
have bugs to report or ideas to improve the program or its documentation,
please send me an email at.
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)
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
You can enter the colour number by:
Wiggling the RGB or HSB (Hue Saturation Brightness)
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  for background and  for foreground. That way
you can use common code for background and foreground. Similarly index R G B components
as   . and H S B as   .
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
Here is the code I used to create this mockup:
Oracle’s Javadoc on JColorChooser class : available: