Ajouter JButton dans une JTable
Bonjour à tous !
J'ai un problème, je souhaite ajouter un JButton dans une colonne d'une JXTable.
Ce bouton j'arrive bien à l'ajouté, cependant quand je clique dessus aucune Action (ActionListener) n'est possible.
Voici mon code lorsque je crée mon bouton :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| private class TableEditor extends AbstractCellEditor implements TableCellEditor, TableCellRenderer {
private static final long serialVersionUID = 5598763435267075115L;
@Override
public Object getCellEditorValue() {
// TODO Auto-generated method stub
return null;
}
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
boolean hasFocus, int row, int column) {
selectLineButton = new JButton("Send ID");
selectLineButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Test button");
};
});
return selectLineButton;
} |
Puis comment je l'ajoute dans la JTable :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| private void initComponent() {
setLayout(new BorderLayout());
table = new JXTable(new TableModel());
((JXTable) table).setColumnControlVisible(true);
((JXTable) table).setSortable(false);
table.getColumnModel().getColumn(3).setCellEditor(new TableEditor());
table.getColumnModel().getColumn(3).setCellRenderer(new TableEditor());
if (selectLineButton != null) {
selectLineButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Send Id");
}
});
} |
J'espère avoir été claire !
Merci d'avance :)