开发者

save Jtable data when savebutton is pressed

I want to save Name and value of jtable into two variable

public class NewClass extends JPanel implements TableModelListener {
private final String[] columnNames = { "Name", "Value","check"};
private JTable table;
private DefaultTableModel tableModel;
private final JButton buttonSave;

public NewClass(){
tableModel = new DefaultTableModel(columnNames, 0);

开发者_如何转开发tableModel.addTableModelListener(this);
table = new JTable(tableModel);
javax.swing.table.TableColumn var_col;
var_col = table.getColumnModel().getColumn(2);
final JCheckBox check = new JCheckBox();

var_col.setCellEditor(new DefaultCellEditor(check));
var_col.setCellRenderer(new DefaultTableCellRenderer() {
            @Override
public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus, int row, int
column) {
check.setSelected(((Boolean)value).booleanValue()) ;
return check;
}
});

JScrollPane scrollPane = new JScrollPane(table);

setLayout(new BorderLayout());
setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));
add(BorderLayout.NORTH, new JLabel("Mon panier", JLabel.CENTER));
add(BorderLayout.CENTER, scrollPane);
//--------I  want to save these Name and value in two variables -----------

Object[] data1 = {
new String("work"), new String("done"),new Boolean(false)};
tableModel.addRow(data1);

buttonSave = new JButton("Save");
buttonSave.setEnabled(false);
buttonSave.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ev) {
    buttonSave.setEnabled(false);
}
});


As discussed in How to Use Tables, your table's data should be managed by a TableModel such as AbstractTableModel or the concrete DefaultTableModel used in your example. In this example, DataModel extends AbstractTableModel and synthesizes a List<Value> of test data; yours would listen to whatever object monitors the serial port. The example also uses the class Value to encapsulate a selectable numeric value. The custom TableCellEditor updates each Value as it is changed, so the DataModel always contains the selection state of each element in the list. Your save button could then save the list elements in whatever format you prefer.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜