2010-07-29 8 views
2

J'ai une table dans laquelle je dois ajouter un JButton.Ajouter un bouton à un jtable

que je fais

TableColumnModel colModel = table.getColumnModel(); 
    colModel.getColumn(0).setCellEditor(new MYCellEditor(new JCheckbox())); 

MyCellEditor extends DefaultCellEditor{ 

public MyCellEditor(JCheckbox checkbox){ 

    super(checkbox); 
Jbutton button = new JButton("Start"); 
//actionlistener for button. 
} 

} 
MyRenderer extends DefaultTablecellRenderer{ 

    public Component getTableCellRendererComponent(JTable table, Object value, 
     boolean isSelected, boolean hasFocus, int row, int column) { 
    //return a button for column ==0  
    } 

Je crois comprendre que le Celleditor a même instance de bouton pour toutes les cellules dans une colonne. Donc, si je clique sur un bouton, le texte change de "Démarrer" à "arrêter", mais si je clique sur le bouton dans l'autre rangée, il ne fonctionne pas .. Après le débogage, il montre que le texte est déjà Stop.

Comment puis-je avoir une instance différente de bouton dans chaque ligne?

+0

Je vous ai donné une réponse de travail sur ce sujet il y a 2 semaines. Vous n'avez pas pris la peine d'accepter la réponse alors (ou toute autre réponse donnée), donc je ne perdrai pas mon temps à répéter la réponse. – camickr

+0

@camickr - l'URL ne s'ouvre pas dans le bureau en raison de problème de confidentialité. Mais cette fois je suis rentré chez moi et j'ai vu la solution. ça m'a vraiment aidé. merci – harshit

Répondre