Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2014, 14:57
nickou
 
Fecha de Ingreso: diciembre-2012
Mensajes: 53
Antigüedad: 11 años, 4 meses
Puntos: 0
Problema con boton derech de JTable

Hola buenas tardes, me dirijo por este medio para compartir mi problema y si es que alguien sabe como resolverlo o orientarme un poco en ello.
Me pasa lo siguiente:

Tengo un JTable que muestra datos, lo que quiero lograr es hacerle Boton derecho y que salga un PopupMenu con la opcion borrar y eliminar los datos que traigo de la BD.
O como segunda opcion, seleccionar la fila y presionar un JButton y eliminar el registro.

este es mi codigo de PopupMenu:

Código Java:
Ver original
  1. table.addMouseListener(new MouseAdapter() {
  2.            
  3.             @Override
  4.             public void mouseClicked(final MouseEvent e) {
  5.                
  6.                
  7.                
  8.                 if(e.getButton()==MouseEvent.BUTTON3){
  9.            
  10.                       final int row = table.rowAtPoint(new Point(e.getX(),e.getY())); //Obtienes el número de la fila
  11.                      table.setRowSelectionInterval(row,row); //Seleccionas la fila
  12.                      
  13.                      JPopupMenu popupMenu = new JPopupMenu();
  14.                     addPopup(table, popupMenu);
  15.                    
  16.                     JMenuItem mntmBorrar = new JMenuItem("Borrar");
  17.                     mntmBorrar.addActionListener(new ActionListener() {
  18.                         public void actionPerformed(ActionEvent arg0) {
  19.                             // aca va el codigo para borrar lo seleccionado
  20.                                
  21.  
  22.                              int row2 = table.rowAtPoint(e.getPoint());
  23.                            
  24.                            
  25.                              
  26.                                         table.getValueAt(row2, 5).toString();
  27.  
  28.                            
  29.                             GestorTurno.eliminarTurnoSeleccionado(   table.getValueAt(row2, 5).toString() );
  30.                            
  31.                             JOptionPane.showMessageDialog(null, "se elimino joya ");
  32.                            
  33.  
  34.                         }
  35.                     });
  36.                     popupMenu.add(mntmBorrar);
  37.                    
  38.                 }
  39.             }
  40.         });

y tengo un metodo para eliminar con las sentencias Sql :

Código Java:
Ver original
  1. public static int eliminarTurnoSeleccionado( int x){
  2.             Turno tur = null;
  3.             int resultado=0;
  4.            
  5.             String sql2= "DELETE FROM turno WHERE codigo_turno=?";
  6.            
  7.             try {
  8.                 PreparedStatement pst =Conexion.conectar().prepareStatement(sql2);
  9.                 pst.setInt(1, x);
  10.                 pst.executeUpdate();
  11.                
  12.             } catch (SQLException e) {
  13.                
  14.                 System.err.println(" Error eliminar - "+e.getMessage());
  15.            
  16.             }
  17.            
  18.            
  19.             return resultado ;
  20.            
  21.         }

No logro borrar los datos de la fila seleccionada.

Desde ya muchas gracias SALUDOS y SUERTE