import javax.swing.table.*; import java.util.*; import javax.swing.event.*; import javax.swing.*; import java.awt.event.*; public class ChartController extends javax.swing.JPanel implements ActionListener { // Table selection model DefaultListSelectionModel listSelectionModel = new DefaultListSelectionModel(); /** Creates new form ChartController */ public ChartController() { initComponents(); listSelectionModel.addListSelectionListener( new javax.swing.event.ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { listSelectionModel_valueChanged(e); } }); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents tableModel = new MyTableModel(); jPanel1 = new javax.swing.JPanel(); jbtInsert = new javax.swing.JButton(); jbtDelete = new javax.swing.JButton(); jbtUpdate = new javax.swing.JButton(); jScrollPane1 = new javax.swing.JScrollPane(); jTable1 = new javax.swing.JTable(); setLayout(new java.awt.BorderLayout()); jbtInsert.setText("Insert"); jbtInsert.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jbtInsertActionPerformed(evt); } }); jPanel1.add(jbtInsert); jbtDelete.setText("Delete"); jbtDelete.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jbtDeleteActionPerformed(evt); } }); jPanel1.add(jbtDelete); jbtUpdate.setText("Update"); jbtUpdate.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jbtUpdateActionPerformed(evt); } }); jPanel1.add(jbtUpdate); add(jPanel1, java.awt.BorderLayout.NORTH); jTable1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { } )); jTable1.setModel(tableModel); jTable1.setSelectionModel(listSelectionModel); jScrollPane1.setViewportView(jTable1); add(jScrollPane1, java.awt.BorderLayout.CENTER); }//GEN-END:initComponents private void jbtUpdateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbtUpdateActionPerformed try { // Get the current row this.tableModelToChartModel(); } catch (Exception ex) { ex.printStackTrace(); } }//GEN-LAST:event_jbtUpdateActionPerformed private void jbtDeleteActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbtDeleteActionPerformed deleteRow(); }//GEN-LAST:event_jbtDeleteActionPerformed private void tableModelToChartModel() { // Notify the change to the chart model int rowCount = tableModel.getRowCount(); String[] dataName = new String[rowCount]; double[] data = new double[rowCount]; for (int i=0; i