package gui.helper; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.AbstractButton; import javax.swing.JTable; public class ColumnSelector implements ItemListener { private final JTable table; private final Integer[] columns; public ColumnSelector(JTable table, Integer... columns) { this.table = table; this.columns = columns; } public void itemStateChanged(ItemEvent e) { if (!(e.getSource() instanceof AbstractButton)) return; Boolean checked = e.getStateChange() == ItemEvent.SELECTED; for (int x = 0, y = table.getRowCount(); x < y; x++) { for (Integer col : columns) { table.setValueAt(checked, x, col); } } } }