Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: problema refresh tabel in JAVA  (Citit de 1710 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
crazybay
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« : Decembrie 10, 2013, 21:31:50 »

Am o problema cu un refresh la un tabel in timp real in momentul in care inserez date noi(in sensul ca nu stiu ce trebuie sa fac ca sa faca asta)
Cod:
package view;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableModel;

import java.sql.*;
import java.util.Calendar;
import java.util.Vector;

import javax.swing.*;

import net.proteanit.sql.DbUtils;
import databaseconnection.DatabaseConnection;

import java.util.GregorianCalendar;//pt afisare data si ora meniu

import net.proteanit.sql.DbUtils;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class Informatii_evenimente extends JFrame {

private JPanel contentPane;
Connection cnx=null;
ResultSet rs = null;
PreparedStatement pst = null;   
private JTable tabel1;
private JTextField textField_ID;
private JTextField textField_Data;
private JTextField textField_Ora;
private JTextField textField_Eveniment;


/**
* Create the frame.
*/


public Informatii_evenimente () {
   cnx=DatabaseConnection.ConnecrDb();  
    //Conexiunea este obtinuta
   try{
   String sql ="select * from EVENIMENT";
    pst=cnx.prepareStatement(sql);
    rs=pst.executeQuery();
   
    // se creaza tabelul
   
    JOptionPane.showMessageDialog(null,"Conexiunea s-a realizat");
   
   
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(400, 100, 715, 335);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);

JScrollPane scrollPane = new JScrollPane(tabel1);
scrollPane.setBounds(216, 11, 473, 168);
contentPane.add(scrollPane);
JTable table = new JTable(buildTableModel(rs));
scrollPane.setViewportView(table);

JButton buton_iesire = new JButton("Iesire");
buton_iesire.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {

System.exit(0);

}
});
buton_iesire.setBounds(600, 263, 89, 23);
contentPane.add(buton_iesire);
buton_iesire.setBackground(Color.LIGHT_GRAY);

textField_ID = new JTextField();
textField_ID.setBounds(98, 15, 86, 20);
contentPane.add(textField_ID);
textField_ID.setColumns(10);

textField_Data = new JTextField();
textField_Data.setBounds(98, 64, 86, 20);
contentPane.add(textField_Data);
textField_Data.setColumns(10);

textField_Ora = new JTextField();
textField_Ora.setBounds(98, 111, 86, 20);
contentPane.add(textField_Ora);
textField_Ora.setColumns(10);

textField_Eveniment = new JTextField();
textField_Eveniment.setBounds(98, 159, 86, 20);
contentPane.add(textField_Eveniment);
textField_Eveniment.setColumns(10);

JLabel JLabel_ID = new JLabel("ID");
JLabel_ID.setBounds(10, 18, 46, 14);
contentPane.add(JLabel_ID);

JLabel JLabel_Data = new JLabel("Data");
JLabel_Data.setBounds(10, 67, 46, 14);
contentPane.add(JLabel_Data);

JLabel JLabel_Ora = new JLabel("Ora");
JLabel_Ora.setBounds(10, 114, 46, 14);
contentPane.add(JLabel_Ora);

JLabel JLabel_Eveniment = new JLabel("Eveniment");
JLabel_Eveniment.setBounds(10, 162, 78, 14);
contentPane.add(JLabel_Eveniment);

JButton buton_adaugare = new JButton("Adaugare");
buton_adaugare.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {

try{
String sql ="Insert into EVENIMENT (ID,Data,Ora,Eveniment)values(?,?,?,?)";   
       pst=cnx.prepareStatement(sql);
       pst.setString(1,textField_ID.getText());
       pst.setString(2,textField_Data.getText());
       pst.setString(3,textField_Ora.getText());
       pst.setString(4,textField_Eveniment.getText());
     
             
       pst.execute();
       textField_ID.setText("");
       textField_Data.setText("");
       textField_Ora.setText("");
       textField_Eveniment.setText("");
     
         
       JOptionPane.showMessageDialog(null, "Datele noi au fost salvate");


}
catch(Exception e1)
{       
       JOptionPane.showMessageDialog(null, e1);
   
    }   

//DefaultTableModel();//pt update timp real date tabel
           
  }
});
buton_adaugare.setBounds(10, 263, 89, 23);
contentPane.add(buton_adaugare);

    // inchide conexiune
} catch(Exception e){
        JOptionPane.showMessageDialog(null, e);
    }finally {
   try{
       rs.close();
       pst.close();
   }
   catch(Exception e){
       
              }
    }
   
}

public static DefaultTableModel buildTableModel(ResultSet rs)
        throws SQLException {

    ResultSetMetaData metaData = rs.getMetaData();

    // nume coloane
    Vector<String> columnNames = new Vector<String>();
    int columnCount = metaData.getColumnCount();
    for (int column = 1; column <= columnCount; column++) {
        columnNames.add(metaData.getColumnName(column));
    }

    // date tabel
    Vector<Vector<Object>> data = new Vector<Vector<Object>>();
    while (rs.next()) {
        Vector<Object> vector = new Vector<Object>();
        for (int columnIndex = 1; columnIndex <= columnCount; columnIndex++) {
            vector.add(rs.getObject(columnIndex));
        }
        data.add(vector);
    }

    return new DefaultTableModel(data, columnNames);

}




}
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines