Re: actualizar jTable2

juan lopez <jazpiroz2006-/[email protected]>
Newsgroups gmane.comp.java.javaspain
Message-ID <[email protected]>
el tema esta en que yo uso un vector y un modelo que extiend de
tablemodel
se entiende?
gracias


--- El jue 17-abr-08, Darkman shadows <darkman87ucr-/[email protected]> escribió:

> De: Darkman shadows <darkman87ucr-/[email protected]>
> Asunto: Re: [javaSpain] actualizar jTable2
> Para: [email protected]
> Fecha: jueves, 17 de abril de 2008, 9:05 pm
> Osea no se como lo que quiere hacer pero es lo mismo simpre,
> si quiere cambiarle los datos a un JList haga esto
> setListData  y le pasas el nuevo arreglo, si solo quiere
> adjuntar un elemento lo adjuntas y le indicas la posicion,
> la posicion seria el valor del arreglo que tiene los datos
> (length) que le pasaste cuando construiste el objeto y
> listo..............................................................
> 
> 
>  
> DarkMan87
> La civilización no suprime la barbarie, la perfecciona.
> 
> 
> 
> ----- Mensaje original ----
> De: juan lopez <jazpiroz2006-/[email protected]>
> Para: [email protected]
> Enviado: jueves, 17 de abril, 2008 13:51:20
> Asunto: Re: [javaSpain] actualizar jTable
> 
> vos decis agregar un addActionListener a un boton y ahi
> escuchar??
> yo lo hago así pero no logro actualizar,
> y no entiendo porque??
>  
> por favor alguien que me pueda dar una mano con esto!!1
> 
> --- El vie 11-abr-08, Darkman shadows <darkman87ucr@
> yahoo.com> escribió:
> 
> De: Darkman shadows <darkman87ucr@ yahoo.com>
> Asunto: Re: [javaSpain] actualizar jTable
> Para: javaSpain@yahoogrou ps.com
> Fecha: viernes, 11 de abril de 2008, 4:53 pm
> 
> 
> No lei todo el codigo de abajo pero me imagino que lo que
> quiere hacer es desplegar un JTable con informacion, normal
> digamos un
> arreglo de tipo String, que escuche algun evento al algo
> por el estilo y cambie la informacion en el JTable, digamos
> que agregue
> un nuevo arreglo de tipo String con nuevos valores, si es
> algo parecido a lo que quieres hacer espero q este codigo
> te sirva.
>  
> declaras la variable que contendra el JList
> private JList jltFiguras;
> luego declaras el arreglo inicial que contendra el JList
> private static String nombreFigurasBidime nsionales[
> ]={"Circulo" ,"Rectangulo"
> ,"Cuadrado" };
> luego el segundo arreglo, el cual deseamos que se repinte
> en el JList al escuhar el evento
> private static String nombreFigurasTridim ensionales[
> ]={"Cubo" ,"Cilindro"
> ,"Piramide" };
> en el constructor llenas el JList con la info (arreglo)
> inicial
>  jltFiguras = new JList (nombreFigurasBidim ensionales) ;
> le colocas un listener a un boton, o al elemto que deseas y
> dentro del metodo (Listener) haces esto
> jltFiguras.setListD ata(nombreFigura sTridimensionale s);
> esto lo que hace es que sustituye el valor que tienes en el
> JList y lo vuelve a "pintar" con los nuevos
> valores
> otro caso es si solo quieres agragar un nuevo elemento al
> JList 
> jltFiguras.add( e , pos); 
> el "e" es un componete o String que deseas
> agragar y el int pos la posicion que deseas que ocupe
>  
> DarkMan87
> La civilización no suprime la barbarie, la perfecciona. 
> 
> 
> 
> ----- Mensaje original ----
> De: juan lopez <jazpiroz2006@ yahoo.com. ar>
> Para: grupo java <javaspain@yahoogrou ps.com>
> Enviado: martes, 8 de abril, 2008 19:53:49
> Asunto: [javaSpain] actualizar jTable
> 
> 
> Hola yo devuelta, hace un tiempo pregunte por esto, y bueno
> desde entonces no encuentro la soluciòn a poder actualizar
> una tabla ya sea con un boton actualizar o automaticamente,
> navegar si he navegado y probado de todo
> estoy desesperado por esto,
> les pego el codigo y me cuentan como puedo lograr esto
> desde ya muchas gracias
>  
> el tableModel:
>  
> package grafica;
> import java.util.Vector;
> import javax.swing. table.AbstractTa bleModel;
> import logica.Clientes;
> import logica.Material;
> import logica.Proveedor;
> import javax.swing. table.*;
> import javax.swing. event.*;
> import java.util.*;
> public class TableModelProveedor es extends
> AbstractTableModel{
>  private Vector vecPro;
>  
>     private String [] columnas={"Có
> digo","Nombre" ,"Direcció
> n","Teléfono"
> ,"RUC","Contacto "};
>     // Constructor. Recibe los bov a mostrar en la tabla y
> las guarda
>     public TableModelProveedor es(Vector cli) 
>     {
>      vecPro = cli;
>     }
>     
>     // métodos sobre-escritos heredados de
> AbstractTableModel
>     
>     // cantidad de columnas
>     public int getColumnCount( ) 
>     {
>       return columnas.length;
>     }
>     
>     // cantidad de filas
>     public int getRowCount( ) 
>     {
>       return vecPro.size( );
>     }
>     
>     // nombre de columna
>     public String getColumnName( int col) 
>     {
>       return columnas[col] ;
>     }
>     
>     // valor almacenado en una determinada posición de la
> tabla
>     public Object getValueAt(int fila,int col) 
>     {
>        switch(col) {
>        
>        case 0: return (((Proveedor) vecPro.get(fila)
> ).getCodigo( ));
>        case 1: return ((Proveedor) vecPro.get(fila)
> ).getNombre( );
>        case 2: return ((Proveedor) vecPro.get(fila)
> ).getDireccion( );
>        case 3: return ((Proveedor) vecPro.get(fila)
> ).getTelefono( );
>        
>        case 4: return ((Proveedor) vecPro.get(fila)
> ).getRuc( );
>        case 5: return ((Proveedor) vecPro.get(fila)
> ).getContacto( );
>        
>        
>               
>        default: return null;
>        
>        //TableModelEvent evento = new TableModelEvent
> (this,fila , fila);
>           // ... y pasándoselo a los suscriptores.
>           //avisaSuscriptores (evento);
>        
>        
>        
>        }
>     }
>       public int getCodAt(int fila){
>        int codigo = ((Proveedor) vecPro.get(fila)
> ).getCodigo( );
>        return codigo;
>       
>         //Avisa a los suscriptores del cambio, creando un
> TableModelEvent ...
>             
>       }
>       
>       
>       
>    
>       
>       /** Lista con los datos. Cada elemento de la lista es
> una instancia de
>        * Persona */
>    
>       
>       /** Lista de suscriptores. El JTable será un
> suscriptor de este modelo de
>        * datos */
>       private LinkedList listeners = new LinkedList() ;
>   
>       
>       
>       
>       public void addTableModelListen er(TableModelLis
> tener l) {
>           // Añade el suscriptor a la lista de
> suscriptores
>           listeners.add (l);
>       }
>       
>       public void removeTableModelLis tener(TableModel
> Listener l) {
>           // Elimina los suscriptores.
>           listeners.remove( l);
>       }
>       
>       
>     
>     // que las celdas no sean editables
>     public boolean isCellEditable( int fila,int col) 
>     {
>         return false;
>     }
>     
>     private void avisaSuscriptores (TableModelEvent evento)
>       {
>           int i;
>           
>           // Bucle para todos los suscriptores en la lista,
> se llama al metodo
>           // tableChanged( ) de los mismos, pasándole el
> evento.
>           for (i=0; i<vecPro.size( ); i++)
>               ((TableModelListene r)listeners.
> get(i)).tableCha nged(evento) ;
>       }
>       
>     /*********** ***** actualizar() ************ *********
> ***/
>       public Vector actualizar(Vector CC ) {
>    
>        // Ejecutar la consulta
>     vecPro=CC;
>        fireTableStructureC hanged();       // Ordena a la
> JTable que se actualice
>     
>        return vecPro;
>    
>       }  
>     
>     
>  
> }
> 
>  
> y la ventana donde genero la tabla:
>  
> package grafica;
> import java.awt.BorderLayo ut;
> import java.awt.event. ActionEvent;
> import java.awt.event. ActionListener;
> import java.util.Iterator;
> import java.util.Vector;
> import javax.swing. ImageIcon;
> import javax.swing. JButton;
> import javax.swing. JFrame;
> import javax.swing. JOptionPane;
> import javax.swing. JPanel;
> import javax.swing. JScrollPane;
> import javax.swing. JTable;
> import javax.swing. ListSelectionMod el;
> import javax.swing. WindowConstants;
> import javax.swing. event.ListSelect ionEvent;
> import javax.swing. event.ListSelect ionListener;
> import javax.swing. table.TableColum n;
> import persistencia. ConexionSingleto nFirebird;
> import java.sql.Connection ;
> import java.util.*;
> import net.sf.jasperreport s.engine. JasperFillManage r;
> import net.sf.jasperreport s.engine. JasperPrint;
> import net.sf.jasperreport s.view.JasperVie wer;
>  
> import logica.ColClientes;
> import logica.Clientes;
> import logica.Facade;
> import logica.Material;
> import logica.Proveedor;
>  
> /**
> * This code was edited or generated using CloudGarden'
> s Jigloo
> * SWT/Swing GUI Builder, which is free for non-commercial
> * use. If Jigloo is being used commercially (ie, by a
> corporation,
> * company or business for any purpose whatever) then you
> * should purchase a license for each developer using
> Jigloo.
> * Please visit www.cloudgarden. com for details.
> * Use of Jigloo implies acceptance of these licensing
> terms.
> * A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
> * THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
> * LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
> */
> public class VentanaListadoProve edores extends
> javax.swing. JFrame implements ListSelectionListen er,
> ActionListener {
> private JPanel jPanel1;
> private JPanel lista;
> Vector vecBanco;
> private JButton jButtonActualiza;
> private JButton jButtonModifica;
> private JButton jButtonSalir;
> private JButton jButtonEliminar;
> private JButton jButtonAgregar;
> ListSelectionModel mod;
> JTable tabla;
> TableModelProveedor es modelo;
> JButton boton;
> JFrame frame;
> Facade log;
> public int codigo;
> /**
> * Auto-generated main method to display this JFrame
> */
> public static void main(String[ ] args) {
> VentanaListadoProve edores inst = new VentanaListadoProve
> edores();
> inst.setVisible( true);
> }
> public VentanaListadoProve edores() {
> super();
> initGUI();
> }
> private void initGUI() {
> try {
> setDefaultCloseOper ation(WindowCons tants.DISPOSE_
> ON_CLOSE) ;
> this.setLocation( new java.awt.Point( 80, 70));
> this.setTitle( "Listado de Proveedores" );
> {
> jPanel1 = new JPanel();
> getContentPane( ).add(jPanel1, BorderLayout. CENTER);
> jPanel1.setLayout( null);
> jPanel1.setPreferre dSize(new java.awt.Dimension( 588,
> 308));
> {
> lista = new JPanel();
> jPanel1.add( lista);
> lista.setBounds( 21, 7, 833, 406);
> lista.setLayout( null);
> }
> {
> jButtonAgregar = new JButton();
> jPanel1.add( jButtonAgregar) ;
> jButtonAgregar. addActionListene r(this);
> jButtonAgregar. setText(" Nuevo");
> jButtonAgregar. setBounds( 28, 420, 105, 28);
> //jButtonAgregar. setIcon(new ImageIcon(getClass(
> ).getClassLoader ().getResource( "grafica/ imagenes/
> bt_Nuevo. jpg")));
> }
> {
> jButtonEliminar = new JButton();
> jPanel1.add( jButtonEliminar) ;
> jButtonEliminar.. addActionListene r(this);
> jButtonEliminar. setText(" Eliminar" );
> jButtonEliminar. setBounds( 273, 420, 112, 28);
> //jButtonEliminar. setIcon(new ImageIcon(getClass(
> ).getClassLoader ().getResource( "grafica/ imagenes/
> bt_Eliminar. jpg")));
> }
> {
> jButtonSalir = new JButton();
> jPanel1.add( jButtonSalir) ;
> jButtonSalir. addActionListene r(this);
> jButtonSalir. setText(" Salir");
> jButtonSalir. setBounds( 756, 420, 98, 28);
> //jButtonSalir. setIcon(new ImageIcon(getClass(
> ).getClassLoader ().getResource( "grafica/ imagenes/
> btnSalir. jpg")));
> }
> {
> jButtonModifica = new JButton();
> jPanel1.add( jButtonModifica) ;
> jButtonModifica. addActionListene r(this);
> jButtonModifica. setText(" Modifica" );
> jButtonModifica. setBounds( 147, 420, 112, 28);
> //jButtonModifica. setIcon(new ImageIcon(getClass(
> ).getClassLoader ().getResource( "grafica/ imagenes/
> bt_Editar. jpg")));
> }
> {
> jButtonActualiza = new JButton();
> jPanel1.add( jButtonActualiza );
> jButtonActualiza. setText(" Actualiza Listado");
> jButtonActualiza. addActionListene r(this);
> jButtonActualiza. setBounds( 406, 420, 126, 28);
> }
> try{
> log = new Facade(0);
> Iterator itera = log.listarProv( 0);
> vecBanco = new Vector();
> while(itera. hasNext() ){
> Proveedor cli = (Proveedor)itera. next();
> vecBanco.addElement (cli);//el table model recibe un
> vector, no un iterator
> }
> }catch(Exception ex){
> JOptionPane. showMessageDialo g(this,ex. getMessage(
> ),"Error" ,JOptionPane.. ERROR_MESSAGE) ;
> }
> modelo = new TableModelProveedor es(vecBanco) ;
> tabla = new JTable(modelo) ;
> tabla.setSelectionM ode(ListSelectio nModel.SINGLE_
> SELECTION) ;
> mod = tabla.getSelectionM odel();
> mod.addListSelectio nListener( this);
> //parte grafica
> JScrollPane scrollPane = new JScrollPane( tabla);
> lista.add(scrollPan e);
> scrollPane.setBound s(7, 7, 826, 385);
> setPreferredWidth( );
> }
> pack();
> this.setSize( 867, 493);
> } catch (Exception e) {
> e.printStackTrace( );
> }
> }
> public void setPreferredWidth( ){
> TableColumn columna = null;
> for(int i = 0; i<modelo.getColumnCou nt(); i++){
> columna = tabla.getColumnMode l().getColumn( i);
> if(i==0){
> columna.setPreferre dWidth(70) ;
> }if(i==1){
> columna.setPreferre dWidth(140) ;
> }
> }
> }
> public void valueChanged( ListSelectionEve nt e){
> if(e.getValueIsAdju sting())
> return;
> if( e.getSource( ) == tabla.getSelectionM odel()){
> // obtener el data model
> TableModelProveedor es model = (TableModelProveedo
> res)tabla. getModel( );
> // Determinar el selected item
> int row = tabla.getSelectedRo w();
> codigo = model.getCodAt( row);
> }
> }
> public void actionPerformed( ActionEvent e) {
> if(e.getSource( )== jButtonSalir) {
> dispose();
> }
> if(e.getSource( )== jButtonAgregar) {
> IngresoProveedor ins = new IngresoProveedor( );
> ins.setVisible( true);
> }
> if(e.getSource( )== jButtonEliminar) {
> //AvisoEliminaMater ial ins = new AvisoEliminaMateria
> l(codigo) ;
> //ins.setVisible( true);
> }
> if(e.getSource( )== jButtonActualiza) {
> try{
> log = new Facade(0);
> Iterator itera = log.listarMateriale s(0);
> vecBanco = new Vector();
> while(itera. hasNext() ){
> Material cli = (Material)itera. next();
> vecBanco.addElement (cli);//el table model recibe un
> vector, no un iterator
> }
> }catch(Exception ex){
> JOptionPane. showMessageDialo g(this,ex. getMessage(
> ),"Error" ,JOptionPane. ERROR_MESSAGE) ;
> }
> //modelo = new TableModelMateriale s(vecBanco) ;
> tabla = new JTable(modelo) ;
> //tabla.setSelectio nMode(ListSelect ionModel.
> SINGLE_SELECTION );
> //mod = tabla.getSelectionM odel();
> //mod.addListSelect ionListener( this);
> //parte grafica
> JScrollPane scrollPane = new JScrollPane( tabla);
> lista.add(scrollPan e);
> scrollPane.setBound s(7, 7, 826, 385);
> }
> if(e.getSource( )==jButtonModifi ca ){
> //ModificaMaterial ins = new ModificaMaterial( codigo);
> //ins.setVisible( true);
> }
> }
> }
>  
>  
> desde ya muchas gracias
>  
>  
> 
> 
> 
> Tarjeta de crédito Yahoo! de Banco Supervielle. Solicitá
> tu nueva Tarjeta de crédito. De tu PC directo a tu casa. 
> Visitá www.tuprimeratarjet a.com.ar 
> 
> 
> 
> 
> 
> 
> ¡Capacidad ilimitada de almacenamiento en tu correo!
> No te preocupes más por el espacio de tu cuenta con Correo
> Yahoo!:
> http://correo. espanol.yahoo. com/ 
> 
> 
> 
> 
> 
> Yahoo! Encuentros
> Ahora encontrar pareja es mucho más fácil, probá el
> nuevo Yahoo! Encuentros.
> Visitá http://yahoo. cupidovirtual. com/servlet/
> NewRegistration 
>  
> 
> 
>      
> ____________________________________________________________________________________
> Yahoo! Deportes Beta
> ¡No te pierdas lo último sobre el torneo clausura 2008!
> Entérate aquí http://deportes.yahoo.com


      Yahoo! Encuentros.

Ahora encontrar pareja es mucho más fácil, probá el nuevo Yahoo! Encuentros http://yahoo.cupidovirtual.com/servlet/NewRegistration
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.