Foros del Web » Programación para mayores de 30 ;) » Java »

Cómo seleccionar una fila de un JTable de Java

Estas en el tema de Cómo seleccionar una fila de un JTable de Java en el foro de Java en Foros del Web. Quiero seleccionar datos de la tabla con teclas de navegación y a la ves buscar en la caja, así como se ve en este imagen: ...
  #1 (permalink)  
Antiguo 18/01/2015, 14:35
Avatar de soy_nicanor  
Fecha de Ingreso: mayo-2010
Mensajes: 374
Antigüedad: 13 años, 11 meses
Puntos: 3
Cómo seleccionar una fila de un JTable de Java

Quiero seleccionar datos de la tabla con teclas de navegación y a la ves buscar en la caja, así como se ve en este imagen:
Ejemplo:
http://2.bp.blogspot.com/_l9TfBKpNoJ...Ben%2Bjava.JPG

Encontré este pagina pero no puedo adaptarlo en mi codigo:
http://jedicerocool.blogspot.com/201...l#.VLwM29KG-t-

Código Java:
Ver original
  1. String ele = txtElemento.getText();
  2.  
  3.         for (int i = 0; i < tbComponentes.getRowCount(); i++) {
  4.             if (tbComponentes.getValueAt(i, 1).equals(ele)) {
  5.                 tbComponentes.changeSelection(i, 1, false, false);
  6.                 break;
  7.             }
  8.         }

Como podría hacerlo funcionar, estoy sacando datos de mysql en una tabla.
__________________
Muy Feliz
  #2 (permalink)  
Antiguo 19/01/2015, 18:35
Avatar de floppy-dj  
Fecha de Ingreso: diciembre-2006
Ubicación: Huelva
Mensajes: 25
Antigüedad: 17 años, 4 meses
Puntos: 0
Respuesta: Cómo seleccionar una fila de un JTable de Java

debes meter ese código dentro del evento del boton buscar, si estas con netbeans, ve a vista diseño das click secundario sobre el boton > events >action > actionperformed, y dentro del evento que te crea automáticamente netbeans, metes ese código que has cogido.
Entonces cada vez que pulses buscar, va a seleccionar el elemento que coincida con el texto que tenga el elemento txtElemento (supongo que sera el cuadro de texto a la izquierda del botón buscar).
  #3 (permalink)  
Antiguo 20/01/2015, 19:10
Avatar de soy_nicanor  
Fecha de Ingreso: mayo-2010
Mensajes: 374
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Cómo seleccionar una fila de un JTable de Java

Lo estoy desarrollando en Netbeans
El código lo tengo en el botón Buscar:
No me funciona


Código Java:
Ver original
  1. package borrar3;
  2. import javax.swing.table.DefaultTableModel;
  3. import BD.Conexion;
  4. import java.awt.event.KeyAdapter;
  5. import java.awt.event.KeyEvent;
  6. import java.sql.*;
  7. import javax.swing.JOptionPane;
  8.  
  9. public class Formulario extends javax.swing.JFrame {
  10.     DefaultTableModel modelo;
  11.  
  12.     /** Creates new form Formulario */
  13.     public Formulario() {
  14.         initComponents();
  15.        
  16.     }


Código Java:
Ver original
  1. private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  2.        
  3.         String valor = jTextField1.getText();
  4.  
  5.         String[] titulos = {"ID", "Codigo", "Articulo", "cantidad", "precio S/:"};
  6.         String[] registro = new String[5];
  7.         String sSQL = "";
  8.         modelo = new DefaultTableModel(null, titulos);
  9.  
  10.         Conexion mysql = new Conexion();
  11.         Connection cn = mysql.Conectar();
  12.  
  13.         sSQL = "SELECT id, codigo, articulo, cantidad, precio FROM articulos " +
  14.                 "WHERE CONCAT(codigo, ' ',articulo) LIKE '%"+valor+"%'";
  15.         try
  16.         {
  17.             Statement st = cn.createStatement();
  18.             ResultSet rs = st.executeQuery(sSQL);
  19.  
  20.             while(rs.next())
  21.             {
  22.                 registro[0] = rs.getString("id");
  23.                 registro[1] = rs.getString("codigo");
  24.                 registro[2] = rs.getString("articulo");
  25.                 registro[3] = rs.getString("cantidad");
  26.                 registro[4] = rs.getString("precio");
  27.                 modelo.addRow(registro);
  28.             }
  29.  
  30.             for (int i = 0; i < jTable1.getRowCount(); i++)
  31.             {
  32.                 if (jTable1.getValueAt(i, 1).equals(valor))
  33.                 {
  34.                     jTable1.changeSelection(i, 1, false, false);
  35.                     break;
  36.                 }
  37.             }
  38.            
  39.  
  40.         }
  41.         catch (SQLException ex)
  42.         {
  43.             JOptionPane.showMessageDialog(null, ex);
  44.         }
  45.        
  46.     }
__________________
Muy Feliz
  #4 (permalink)  
Antiguo 20/01/2015, 19:12
Avatar de soy_nicanor  
Fecha de Ingreso: mayo-2010
Mensajes: 374
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Cómo seleccionar una fila de un JTable de Java

Código Java:
Ver original
  1. for (int i = 0; i < jTable1.getRowCount(); i++)
  2.             {
  3.                 if (jTable1.getValueAt(i, 1).equals(modelo))
  4.                 {
  5.                     jTable1.changeSelection(i, 1, false, false);
  6.                     break;
  7.                 }
  8.             }

Pero con este codigo si me funciona:
Código Java:
Ver original
  1. jTable1.setModel(modelo);
__________________
Muy Feliz
  #5 (permalink)  
Antiguo 22/01/2015, 08:01
Avatar de soy_nicanor  
Fecha de Ingreso: mayo-2010
Mensajes: 374
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Cómo seleccionar una fila de un JTable de Java

No se puede adaptar
__________________
Muy Feliz

Etiquetas: fila, jtable, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:31.