Comment mettre en œuvre liste de case à cocher java

Probablement une question de noob, mais im nouveau à java. J'ai besoin d'une liste de case à cocher que j'ai trouvé n'est pas pris en charge dans le swing, mais j'ai trouvé ce contrôle personnalisé ici

http://www.devx.com/tips/Tip/5342

J'ai donc créé un fichier de classe nommé CheckBoxList, et copié le code à partir du lien en elle:

import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
public class CheckBoxList extends JList
{
protected static Border noFocusBorder =
new EmptyBorder(1, 1, 1, 1);
public CheckBoxList()
{
setCellRenderer(new CellRenderer());
addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
int index = locationToIndex(e.getPoint());
if (index != -1) {
JCheckBox checkbox = (JCheckBox)
getModel().getElementAt(index);
checkbox.setSelected(
!checkbox.isSelected());
repaint();
}
}
}
);
setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
protected class CellRenderer implements ListCellRenderer
{
public Component getListCellRendererComponent(
JList list, Object value, int index,
boolean isSelected, boolean cellHasFocus)
{
JCheckBox checkbox = (JCheckBox) value;
checkbox.setBackground(isSelected ?
getSelectionBackground() : getBackground());
checkbox.setForeground(isSelected ?
getSelectionForeground() : getForeground());
checkbox.setEnabled(isEnabled());
checkbox.setFont(getFont());
checkbox.setFocusPainted(false);
checkbox.setBorderPainted(true);
checkbox.setBorder(isSelected ?
UIManager.getBorder(
"List.focusCellHighlightBorder") : noFocusBorder);
return checkbox;
}
}
}

Le problème est que je ne sais pas comment la mettre dans mon fichier GUI. J'ai essayé beaucoup de code, mais ils n'ont jamais montré un exemple. Juste

L'utilisation de la classe, il suffit d'instancier, de le passer à un tableau de
JCheckBox des objets (ou des sous-classes de JCheckBox objets) en appelant
setListData

Donc, est-ce à dire que je ne vais pas voir le contrôle de la Conception Graphique de la vue? Mon client veut être en mesure de le modifier lui-même et ajouter des trucs, donc je veux qu'il soit facile et graphique si possible. Si quelqu'un pouvait montrer un exemple d'instanciation ou de donner une bonne idée, j'apprécierais. Merci!

InformationsquelleAutor FrostyFire | 2014-01-26