This week's book giveaway is in the Jobs Discussion forum.
We're giving away four copies of Java Interview Guide and have Anthony DePalma on-line!
See this thread for details.
The moose likes Swing / AWT / SWT and the fly likes SWT Tristate Checkbox Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Java » Swing / AWT / SWT
Bookmark "SWT Tristate Checkbox" Watch "SWT Tristate Checkbox" New topic

SWT Tristate Checkbox

Hariharan Sethuraman

Joined: Apr 17, 2006
Posts: 2

I am trying to bring three state checkbox(Checked/UnChecked/Intermediate) in a tableviewer...can any help me how to do this.

I tried the,
But my SWT package has the heriarchy ITableLabelProvider from IBaseLabelProvider. But the above article tells as

These methods are called by the TableViewer whenever a table element needs to be refreshed. Our ITableLabelProvider extends org.eclipse.jface.viewers.LabelProvider. This way, we benefit from the behavior defined in the superclass. Internally, our class manages an image registry (for the checkboxes) so we had to put in place the mechanics to load and manage instances of org.eclipse.jface.resource.ImageDescriptor and org.eclipse.jface.resource.ImageRegistry. The details of this can be assessed by looking at the source code for the class. In SWT, platform resources such as images and fonts must be disposed of when the application exits. However, an ImageRegistry owns all of the image objects registered with it and automatically disposes of them when the SWT Display is disposed so we do not need to explicitly do so.
But my package has the ITableLableProvider extends IBaseLabelProvider.

I am bit confused..Is it due to package version difference..Or what is the approach to be done in my current version SWT-3.1.2.

Campbell Ritchie

Joined: Oct 13, 2005
Posts: 46427
Welcome to the Ranch.

Can you have a checkbox with three states? I can't get your URL to work; it give a 404 error when I try it.

I looked at java.awt.CheckBox and javax.swing.JCheckBox in the API specifications, and they seem to have two states only. What have I missed?

Hariharan Sethuraman

Joined: Apr 17, 2006
Posts: 2

The URL is ""

You can bring 3rd state in Swing for JCheckBox using ButtonModel.

I continued trying my problem by writing an inner class extending LabelProvider and implementing ITableLabelProvider, and override the method getImage of LabelProvider. By returning 3 type of images according to state..Is there any other method as SWT calls the native methods,where the windows has tristate checkbox..

subject: SWT Tristate Checkbox
It's not a secret anymore!