Ver Mensaje Individual
  #17 (permalink)  
Antiguo 22/04/2013, 17:17
ambigus
 
Fecha de Ingreso: septiembre-2008
Mensajes: 221
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: ¿Cómo hacer funcionar dos JTable?

Holaaaaaaaaa

Gracias :) Sólo que pues al final implementé otro tipo de for, pero también funciona.

Una pregunta ¿Porqué no me imprime todos los estudiantes de la materia?

Este es el código del AgregarNotasEstudianteDialogo

Código Javascript:
Ver original
  1. package universidad_grafica;
  2.  
  3.  
  4. import java.util.List;
  5. import javax.swing.JOptionPane;
  6. import javax.swing.table.DefaultTableModel;
  7.  
  8. public class AgregarNotasEstudianteDialogo extends javax.swing.JDialog {
  9.  
  10.     private List<Docente>    docentes = null;
  11.     private List<Materia>    materias = null;
  12.     private List<Estudiante> estudiantes = null;
  13.    
  14.    
  15.    
  16.     public List<Docente> getDocentes(){ return docentes; }
  17.     public void setDocentes(List<Docente> docentes){ this.docentes = docentes;}
  18.    
  19.     public List<Materia> getMaterias(){ return materias; }
  20.     public void setMaterias(List<Materia> materias){ this.materias = materias;}
  21.    
  22.     public List<Estudiante> getEstudiantes(){ return estudiantes; }
  23.     public void setEstudiantes(List<Estudiante> estudiantes){ this.estudiantes = estudiantes;}
  24.    
  25.     public Docente buscarDocente(String codigo){  // Buscador auxiliar para Docentes
  26.        Docente d = null;
  27.        for(Docente docente : docentes){
  28.               if(codigo.equalsIgnoreCase(docente.getCodigodocente())){
  29.                      d = docente;
  30.                    
  31.                }
  32.        }
  33.  
  34.     return d;
  35.        }
  36.    
  37.      public Materia buscarMateria(String codigodelamateria){  // Buscador auxiliar para Materias
  38.        Materia m = null;
  39.        for(Materia materia : materias){
  40.               if(codigodelamateria.equalsIgnoreCase(materia.getCodigomateria())){
  41.                      m = materia;
  42.                    
  43.                }
  44.        }
  45.  
  46.     return m;
  47.        }
  48.    
  49.        public Estudiante buscarMateriasestudiante(String codigodelamateria , String codigoestudiante){
  50.        Estudiante e = null;
  51.        for(Estudiante estudiante : estudiantes){
  52.           if ( estudiante.getCodigoestudiante().equalsIgnoreCase(codigoestudiante))
  53.           {
  54.              for ( int i=0; i<estudiante.getMateriasdelestudiante().size(); i++ )
  55.               {
  56.                if(codigodelamateria.equalsIgnoreCase(estudiante.getMateriasdelestudiante().get(i)) )
  57.                      {
  58.                         e = estudiante;      
  59.                      }
  60.               }  
  61.           }
  62.  
  63.              
  64.        }
  65.  
  66.     return e;
  67.        }
  68.        
  69.      public Estudiante buscarMateriasestudiantebase(String codigodelamateria){
  70.        Estudiante e = null;
  71.        for(Estudiante estudiante : estudiantes){
  72.          for ( int i=0; i<estudiante.getMateriasdelestudiante().size(); i++ )
  73.             {
  74.                if(codigodelamateria.equalsIgnoreCase(estudiante.getMateriasdelestudiante().get(i)) )
  75.                      {
  76.                         e = estudiante;      
  77.                      }
  78.               }            
  79.        }
  80.     return e;
  81.        }
  82.        
  83.        public Docente buscarMateriasdocente(String codigodelamateria , String codigodocente){
  84.        Docente d = null;
  85.        for(Docente docente : docentes){
  86.           if ( docente.getCodigodocente().equalsIgnoreCase(codigodocente))
  87.           {
  88.              for ( int i=0; i<docente.getMateriasdeldocente().size(); i++ )
  89.               {
  90.                if(codigodelamateria.equalsIgnoreCase(docente.getMateriasdeldocente().get(i)) )
  91.                      {
  92.                         d = docente;      
  93.                      }
  94.               }  
  95.           }      
  96.        }
  97.     return d;
  98.        }
  99.    
  100.    
  101.    
  102.     DefaultTableModel model;
  103.    
  104.    
  105.     int filas1 = 0;
  106.     int filas = 0;
  107.  
  108.    
  109.    
  110.     /**
  111.      * Creates new form MateriaDialogo
  112.      */
  113.     public AgregarNotasEstudianteDialogo(javax.swing.JDialog parent, boolean modal) {
  114.         super(parent, modal);
  115.         initComponents();
  116.         this.setLocationRelativeTo(null);
  117.     }

Aqui va la parte gráfica que he omitido. Siguen los botones,

Botón BuscarMateria

Nota: Este botón busca la materia que el docente ha matriculado y que el estudiante también matriculó, para así luego imprimir los estudiantes a los que se les va a ingresar las notas

Código Javascript:
Ver original
  1. private void botonbuscarmateriaActionPerformed(java.awt.event.ActionEvent evt) {                                                  
  2. /// Buscar estudiantes registrados en la materia ///
  3.          if(!(this.txtCodigodocente.getText().trim().isEmpty()))
  4.         {
  5.            
  6.            Docente d = buscarMateriasdocente(this.txtCodigomateria.getText().trim() , this.txtCodigodocente.getText().trim());          
  7.            Estudiante e = buscarMateriasestudiantebase(this.txtCodigomateria.getText().trim());
  8.            Materia m = buscarMateria(this.txtCodigomateria.getText().trim());
  9.             if(m==null){
  10.                 JOptionPane.showMessageDialog(this,
  11.                 "La Materia no se encuentra registrada en la Universidad",
  12.                 "Agregar Materias a un Docente", JOptionPane.ERROR_MESSAGE);
  13.                 this.txtCodigomateria.setText(null);
  14.                 this.txtCodigomateria.requestFocus();
  15.              }
  16.            
  17.             else{    
  18.                               for(Materia materia : materias)
  19.                                  {
  20.                                     if ( materia.getCodigomateria().equalsIgnoreCase(this.txtCodigomateria.getText().trim()))
  21.                                       {
  22.                                           if ( d!=null && e!=null )
  23.                                           {
  24.                                              this.txtCodigoestudiante.requestFocus();  
  25.                                                // Registrar datos en la tabla
  26.                                                model=(DefaultTableModel)this.jTablaestudiantesmateria.getModel();
  27.                                                Object fila[] = new Object[3];
  28.                                                fila[0] = e.getCodigoestudiante();
  29.                                                fila[1] = e.getNombreestudiante();
  30.                                                fila[2] = e.getApellidoestudiante();
  31.                                                model.addRow(fila);
  32.                                                jTablaestudiantesmateria.setModel(model);        
  33.                                            }
  34.                                            filas++;
  35.                                              
  36.                                           }
  37.                                    }        
  38.             }    
  39.           }
  40.     }