Solved

I want JCheckBox Disabled color to be black. Any workaround ?

Posted on 2001-07-17
17
971 Views
Last Modified: 2008-01-09
Hi,
   I have JCheckBox and other components in a panel and I will print the panel. Before printing I will disable the JCheckBox and will show the user. After disabling, the JCheckBox Forground color is Gray and if i print it, it is hardly visible. Is it possible to change the fore ground color of the JCheckBox to Black for printing ??

   Any suggestion or workaround is welcome.

Regards,
Prem.
0
Comment
Question by:PremkumarAC
  • 7
  • 5
  • 3
  • +2
17 Comments
 
LVL 9

Expert Comment

by:Ovi
ID: 6289127
YourCheckBox.setForeground(yourColor);
Will work even if is disabled.
0
 
LVL 92

Expert Comment

by:objects
ID: 6289129
Why are you disabling it?
0
 

Author Comment

by:PremkumarAC
ID: 6289152
Hi Ovi,
   My code is like this:

boolean flag = ...; // i will read the data from a model
myCheckBox.setForeground( Color.black);
myCheckBox.setEnabled( flag);

But, still the check box is disabled and the color is gray and i am getting the same color in the hard copy.

Hi Objects,
   I am reading the values from the model, so i am disabling the JCheckBox.

Regards,
Prem.
0
 
LVL 9

Expert Comment

by:Ovi
ID: 6289162
f you set the color other to the black before you disable'it you will see the difference.
The checkbox renderer only make a graphic filter on the foreground so a black foreground will become a less black one (gray) after the check box i disabled.
0
 
LVL 92

Expert Comment

by:objects
ID: 6289166
Still don't exactly inderstand your reason for disabling but why not use a glass pane instead of disabling the checkbox?

0
 
LVL 9

Expert Comment

by:Ovi
ID: 6289169
boolean flag = ...; // i will read the data from a model
//  myCheckBox.setForeground( Color.black);
myCheckBox.setEnabled( flag);
myCheckBox.setForeground(Color.blue); // or new Color(int, int, int);
0
 
LVL 92

Expert Comment

by:objects
ID: 6289185
If you want control of the disabled icon the you can explicitly set it using setDisabledIcon() setDisabledSelectedIcon() method:

eg.

cb.setDisabledIcon(cb.getIcon());
cb.setDisabledSelectedIcon(cb.getSelectedIcon());

will use the same icon when disabled as it does when it is enabled.
0
 

Author Comment

by:PremkumarAC
ID: 6289206
Is it possible to add a glassPane to a JPanel ??
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 92

Expert Comment

by:objects
ID: 6289232
No but your frame will have one.
0
 

Author Comment

by:PremkumarAC
ID: 6289269
Is it possible to add a glassPane to a JPanel ??
0
 
LVL 92

Expert Comment

by:objects
ID: 6289280
No, you just use the one on your frame.
0
 

Author Comment

by:PremkumarAC
ID: 6289358
My parent component is Frame and not JFrame. So I think it is not possible to use Glass pane over my component.
0
 
LVL 92

Expert Comment

by:objects
ID: 6289380
You could possibly switch to a JFrame.
Or define the disable icon you want to use as I suggested above.
Or find an alternative to disabling.

Your decision really :)

0
 

Author Comment

by:PremkumarAC
ID: 6298120
checkBox.setForeGround( color) won't work when the checkbox is disabled.
0
 
LVL 92

Expert Comment

by:objects
ID: 6300487
Then simply assign the disabled icon that you want to use explicitly as I described above.
I believe it only greys out the icon, if you have not explicitly defined one.
0
 
LVL 5

Expert Comment

by:vemul
ID: 7669726
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:
- To be PAQ'ed and points NOT refunded
Please leave any comments here within the next seven days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER !

vemul
Cleanup Volunteer
0
 
LVL 5

Accepted Solution

by:
Netminder earned 0 total points
ID: 7714687
Per recommendation, points NOT refunded and question closed.

Netminder
EE Admin
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

895 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now