• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

JCheckBox in a JList

 
Ranch Hand
Posts: 15304
6
Mac OS X IntelliJ IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am trying to make a JList of JCheckBoxes. Here is the code

It comiles and runs, and I can see the Checkboxes with the correct text, however, I can't click on the check boxes. When I click the checks, they don't get checked. Any ideas?
 
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
1. Create an Object to retain the checkbox's state, generate accessors, override toString(), etc
public ListCheckBox(Object newObject) {
aObject = newObject;
isSelected = false;
}
then add this object to your data model
DefaultListModel aModel = new DefaultListMode();
aModel.addElement(new ListCheckBox(newElement));
.
.
theList.setModel(aModel);

2. In your list cell renderer's getListCellRendererComponent, change the state of the checkbox:

this.setSelected(((ListCheckBox) value).isSelected());
3. Add a mouselistener to your list and upon mouseClicked:
public void doCheck() {
ListCheckBox item =
(ListCheckBox) getSelectedValue();
item.setSelected(!item.isSelected());
repaint();
}
This is should start you in the right direction but you'll probably have to do a lot of tweeking to get it to behave the way you want.
 
Bartender
Posts: 4121
IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
"TK" -

Welcome to the JavaRanch! Please adjust your displayed name to meet the
JavaRanch Naming Policy.
You can change it here.

Thanks! and welcome to the JavaRanch!
 
We should throw him a surprise party. It will cheer him up. We can use this tiny ad:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic