Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/08/2011, 10:34
sterlingdiazd
 
Fecha de Ingreso: junio-2009
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: Metodo getSelectedRow() no retorna la fila seleccionada

Aun asi no funciono. Pongo aqui la clase completa porque me parece que no es la sintaxis sino alguna otra cosa. Pero no me explico porque en un lugar me funciona correctamente y en otro no.
No tienen que analizar todo el codigo, ni mucho menos. Abajo señalo donde esta el actionListener que ejecuta bien el codigo, y en el siguiente trozo de codigo, que es donde no funciona, tambien lo muestro aparte, por el largo, aunque como dije, no tienes que analizarlo todo.

Código Java:
Ver original
  1. import javax.swing.*;
  2. package proyecto;
  3.  
  4. import javax.swing.*;
  5.  
  6. public class DialogoPerfilAdministrador extends JDialog {
  7.  
  8.         //PANEL USUARIOS
  9.        
  10.         JPanel panel_Usuarios = new JPanel();
  11.         panel_Usuarios.setPreferredSize(new Dimension(2, 2));
  12.         panel_Usuarios.setBorder(new MatteBorder(1, 1, 1, 1, (Color) Color.LIGHT_GRAY));
  13.         panel_Usuarios.setFont(new Font("Tahoma", Font.BOLD, 12));
  14.         tabbedPane.addTab("Usuarios", new ImageIcon(DialogoPerfilAdministrador.class.getResource("/images/Icono_Usuarios.png")), panel_Usuarios, null);
  15.         panel_Usuarios.setLayout(null);
  16.        
  17.             //DATOS USUARIOS
  18.             JPanel Datos_Usuarios = new JPanel();
  19.             Datos_Usuarios.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Datos del Usuario", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(116, 116, 116)));
  20.             Datos_Usuarios.setBounds(10, 10, 770, 70);
  21.             panel_Usuarios.add(Datos_Usuarios);
  22.             Datos_Usuarios.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
  23.            
  24.             JLabel lblNombre_Usuario = new JLabel("Nombre");
  25.             Datos_Usuarios.add(lblNombre_Usuario);
  26.            
  27.             txtNombre_Usuarios = new JTextField();
  28.             Datos_Usuarios.add(txtNombre_Usuarios);
  29.             txtNombre_Usuarios.setColumns(10);
  30.            
  31.             JLabel lblApellido_Usuario = new JLabel("Apellido");
  32.             Datos_Usuarios.add(lblApellido_Usuario);
  33.            
  34.             txtApellido_Usuario = new JTextField();
  35.             Datos_Usuarios.add(txtApellido_Usuario);
  36.             txtApellido_Usuario.setColumns(10);
  37.            
  38.             JLabel lblUsuario_Usuario = new JLabel("Usuario");
  39.             Datos_Usuarios.add(lblUsuario_Usuario);
  40.            
  41.             txtUsuario_Usuario = new JTextField();
  42.             Datos_Usuarios.add(txtUsuario_Usuario);
  43.             txtUsuario_Usuario.setColumns(10);
  44.            
  45.             JLabel lblClave_Usuario = new JLabel("Clave");
  46.             Datos_Usuarios.add(lblClave_Usuario);
  47.            
  48.             txtClave_Usuario = new JPasswordField();
  49.             txtClave_Usuario.setColumns(10);
  50.             Datos_Usuarios.add(txtClave_Usuario);
  51.            
  52.             JLabel lblPerfil_Usuario = new JLabel("Perfil");
  53.             Datos_Usuarios.add(lblPerfil_Usuario);
  54.            
  55.             comboBoxPerfil_Usuario = new JComboBox();
  56.             comboBoxPerfil_Usuario.setModel(new DefaultComboBoxModel(new String[] {"Elija el perfil", "Administrador", "Portero"}));
  57.             Datos_Usuarios.add(comboBoxPerfil_Usuario);
  58.            
  59.             //FUNCIONALIDADES USUARIOS
  60.             JPanel Funcionalidades_Usuario = new JPanel();
  61.             Funcionalidades_Usuario.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Funcionalidades", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(116, 116, 116)));
  62.             Funcionalidades_Usuario.setBounds(202, 90, 385, 100);
  63.             panel_Usuarios.add(Funcionalidades_Usuario);
  64.             Funcionalidades_Usuario.setLayout(null);
  65.            
  66.                 // INSERTAR USUARIO
  67.                
  68.                 JButton btnInsertar_Usuarios = new JButton("");
  69.                 btnInsertar_Usuarios.addActionListener(new ActionListener() {
  70.                     public void actionPerformed(ActionEvent arg0) {
  71.                        
  72.                         modelo_Usuario.insertar(new Usuario(txtNombre_Usuarios.getText(), txtApellido_Usuario.getText(), txtUsuario_Usuario.getText(), txtClave_Usuario.getText(), comboBoxPerfil_Usuario.getSelectedItem().toString() ));
  73.                        
  74.                         limpiarCampos_Usuarios();
  75.                        
  76.                         JOptionPane.showMessageDialog( new DialogoInicioSesion( new Vista() ),
  77.                                 "Contacto Agregado satisfactoriamente." +
  78.                                 "\nCuando desee modificar un contacto," +
  79.                                 "\nseleccionelo y dele click a editar."
  80.                                 ,"Usuario Agregado", JOptionPane.INFORMATION_MESSAGE);
  81.                        
  82.                     }
  83.                 });
  84.                 btnInsertar_Usuarios.setToolTipText("Insertar");
  85.                 btnInsertar_Usuarios.setIcon(new ImageIcon("C:\\Documents and Settings\\BlackCrystal\u2122\\Escritorio\\Indigo\\workspace\\ProyectoFinal\\src\\images\\Icono_Insertar.png"));
  86.                 btnInsertar_Usuarios.setBounds(10, 25, 65, 63);
  87.                 Funcionalidades_Usuario.add(btnInsertar_Usuarios);
  88.                
  89. //Esta es la parte que funciona bien               
  90.  
  91.                                 //EDITAR USUARIO
  92.                
  93.                 JButton btnEditar_Usuarios = new JButton("");
  94.                 btnEditar_Usuarios.addActionListener(new ActionListener() {
  95.                     public void actionPerformed(ActionEvent arg0) {
  96.                        
  97.                         filaSeleccionada = tablaUsuarios.getSelectedRow(); 
  98.                        
  99.                         txtNombre_Usuarios.setText(     modelo_Usuario.usuarios.get(filaSeleccionada).getNombre() );
  100.                         txtApellido_Usuario.setText(    modelo_Usuario.usuarios.get(filaSeleccionada).getApellido() );
  101.                         txtUsuario_Usuario.setText(     modelo_Usuario.usuarios.get(filaSeleccionada).getUsuario() );
  102.                         txtClave_Usuario.setText(       modelo_Usuario.usuarios.get(filaSeleccionada).getClave() );
  103.                         comboBoxPerfil_Usuario.setSelectedItem( modelo_Usuario.usuarios.get(filaSeleccionada).getPerfil() );
  104.                        
  105.                         JOptionPane.showMessageDialog( new DialogoInicioSesion( new Vista() ),
  106.                                 "Los datos del usuario que desea editar estan en los campos superiores de la pantalla." +
  107.                                 "\nCuando haya concluido haga click en Modificar."
  108.                                 , "Edicion de Usuario", JOptionPane.INFORMATION_MESSAGE);
  109.                        
  110.                     }
  111.                 });
  112.                 btnEditar_Usuarios.setIcon(new ImageIcon("C:\\Documents and Settings\\BlackCrystal\u2122\\Escritorio\\Indigo\\workspace\\ProyectoFinal\\bin\\images\\Icono_Editar.png"));
  113.                 btnEditar_Usuarios.setBounds(85, 25, 65, 63);
  114.                 Funcionalidades_Usuario.add(btnEditar_Usuarios);
  115.                
  116.                 //MODIFICAR USUARIO
  117.                
  118.                 JButton btnModificar_Usuarios = new JButton("");
  119.                 btnModificar_Usuarios.addActionListener(new ActionListener() {
  120.                     public void actionPerformed(ActionEvent arg0) {
  121.                        
  122.                         if (txtNombre_Usuarios.getText().length() < 2 ){
  123.                             JOptionPane.showMessageDialog( new DialogoInicioSesion( new Vista() ) ,
  124.                                     "Aun no ha editado ningun contacto. " +
  125.                                     "\nPor favor, seleccione una fila del listado y dele click a editar." +
  126.                                     "\nLuego a modificar para guardar las modificaciones."
  127.                                     , "Edicion de incorrecta de Usuario", JOptionPane.INFORMATION_MESSAGE);
  128.                         } else {
  129.                             modelo_Usuario.usuarios.get(filaSeleccionada).setNombre(txtNombre_Usuarios.getText());
  130.                             modelo_Usuario.usuarios.get(filaSeleccionada).setApellido(txtApellido_Usuario.getText());
  131.                             modelo_Usuario.usuarios.get(filaSeleccionada).setUsuario(txtUsuario_Usuario.getText());
  132.                             modelo_Usuario.usuarios.get(filaSeleccionada).setClave(txtClave_Usuario.getText());
  133.                             modelo_Usuario.usuarios.get(filaSeleccionada).setPerfil(comboBoxPerfil_Usuario.getSelectedItem().toString());
  134.                            
  135.                             modelo_Usuario.modificar(filaSeleccionada);
  136.                            
  137.                             JOptionPane.showMessageDialog(  new DialogoInicioSesion( new Vista() ) ,
  138.                                     "Usuario modificado satisfactoriamente. " +
  139.                                     "\nSi quiso modificar el nombre de un usuario," +
  140.                                     "\nse creo un nuevo usuario nuevo, elimine el anterior" +
  141.                                     "\nLuego a modificar para guardar las modificaciones.",
  142.                                     "Usuario Modificado", JOptionPane.INFORMATION_MESSAGE);
  143.                            
  144.                             limpiarCampos_Usuarios();
  145.                         }
  146.                     }
  147.                 });
  148.                 btnModificar_Usuarios.setIcon(new ImageIcon("C:\\Documents and Settings\\BlackCrystal\u2122\\Escritorio\\Indigo\\workspace\\ProyectoFinal\\src\\images\\Icono_Modificar.png"));
  149.                 btnModificar_Usuarios.setBounds(160, 25, 65, 63);
  150.                 Funcionalidades_Usuario.add(btnModificar_Usuarios);
  151.                
  152.                 // ELIMINAR USUARIO
  153.                
  154.                 JButton btnEliminar_Usuarios = new JButton("");
  155.                 btnEliminar_Usuarios.addActionListener(new ActionListener() {
  156.                     public void actionPerformed(ActionEvent arg0) {
  157.                        
  158.                         modelo_Usuario.eliminar( tablaUsuarios.getSelectedRow() );
  159.                        
  160.                         JOptionPane.showMessageDialog( new DialogoInicioSesion( new Vista() ) ,
  161.                         "Contacto eliminado satisfactoriamente.",
  162.                         "Contacto Eliminado", JOptionPane.INFORMATION_MESSAGE);
  163.                        
  164.                     }
  165.                 });
  166.                 btnEliminar_Usuarios.setIcon(new ImageIcon("C:\\Documents and Settings\\BlackCrystal\u2122\\Escritorio\\Indigo\\workspace\\ProyectoFinal\\src\\images\\Icono_Eliminar.png"));
  167.                 btnEliminar_Usuarios.setBounds(235, 25, 65, 63);
  168.                 Funcionalidades_Usuario.add(btnEliminar_Usuarios);
  169.                
  170.             // LISTADO USUARIOS
  171.            
  172.             JPanel Listado_Usuarios = new JPanel();
  173.             Listado_Usuarios.setPreferredSize(new Dimension(0, 0));
  174.             Listado_Usuarios.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Listado de Usuarios", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(116, 116, 116)));
  175.             Listado_Usuarios.setBounds(10, 200, 772, 190);
  176.             panel_Usuarios.add(Listado_Usuarios);
  177.            
  178.             JScrollPane scrollPane_Usuarios = new JScrollPane();
  179.             scrollPane_Usuarios.setPreferredSize(new Dimension(750, 150));
  180.             Listado_Usuarios.add(scrollPane_Usuarios);
  181.            
  182.             tablaUsuarios = new JTable();
  183.             tablaUsuarios.setBounds(new Rectangle(220, 220, 0, 0));
  184.             tablaUsuarios.setModel(modelo_Usuario);
  185.             scrollPane_Usuarios.setViewportView(tablaUsuarios);