Título: Consulta sobre código
Publicado por: SebastianJava en 26 Octubre 2013, 22:27 pm
Buenas Tardes a la comunidad, mi nombre es sebastian y estoy creando un CRUD sin base de datos, estoy haciendo un codigo paso a paso, me he estancando en agregar una tabla dentro de mi código para que aparezcan los botones y la tabla a medida que se van ingresando. Les pido mis disculpas de antemano y espero me puedan ayudar. gracias. si me equivoque es postear, soy novato en este foro. :-[ package menu; import javax.swing.JTextField; import javax.swing.JButton; import javax.swing.JPanel;
import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout;
import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.WindowConstants; import javax.swing.JOptionPane; // de aca en adelante para asignar accion al boton import javax.swing.JButton;
import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Scanner;
public class MenuPrincipal{
private JFrame frame; private JPanel panelSuperior; private JPanel panelInferior; private JPanel panelBoton;
private JLabel titulo; private JLabel JLabel1; private JTextField JText1; private JLabel JLabel2; private JTextField JText2; private JLabel JLabel3; private JTextField JText3; private JLabel JLabel4; private JTextField JText4; private JLabel JLabel5; private JTextField JText5; private JLabel JLabel6; private JComboBox combo;
private JButton btnregistrar; private JButton btnconsultar; private JButton btnborrar; private JButton btnmodificar;
private JButton btnlimpiar; private JScrollPane jScrollPane; private JTable tabla; public MenuPrincipal() { construyePanelSuperior(); construyePanelInferior(); construyePanelBoton(); construyeVentana(); } //metodo para agregar las filas int filas=0; private void agregarFila(){ // se crea un modelo para la tabla, el nombre de la variable de la tabla es: tabla DefaultTableModel modelo=(DefaultTableModel) tabla.getModel();
//se agrega la fila en la tabla con un valor vacio modelo.addRow(new Object[filas]);
//para agregar valores en la fila tabla.setValueAt("Juanito",filas , 0); tabla.setValueAt("perez", filas, 1); tabla.setValueAt("perez", filas, 2); //primero va el valor del campoo despues el numero de la fila y por ultimo el numero de la columna filas++; //el numero de las filas y columnas empieza en cero }
public void construyePanelSuperior(){ panelSuperior = new JPanel(); panelSuperior.setLayout(new FlowLayout()); panelSuperior.setBackground(Color.LIGHT_GRAY);
titulo = new JLabel("Ingreso de Datos"); panelSuperior.add(titulo);
}
public void construyePanelInferior() { panelInferior = new JPanel(); panelInferior.setLayout(new GridLayout(3, 8, 12, 30)); // FILAS COLUMNAS // LARGO ANCHO JLabel1 = new JLabel(" Rut : "); JText1 = new JTextField(10); JLabel2 = new JLabel(" Nombre : "); JText2 = new JTextField(10);
JLabel3 = new JLabel(" Apellido : "); JText3 = new JTextField(10);
JLabel4 = new JLabel(" Dirección : "); JText4 = new JTextField(10);
JLabel5 = new JLabel(" Teléfono : "); JText5 = new JTextField(10);
JLabel6 = new JLabel(" Ciudad :"); combo = new JComboBox();
combo.addItem("Valparaiso");// AGREGAR OPCIONES COMBO combo.addItem("Viña del Mar"); combo.addItem("Villa Alemana"); combo.addItem("Santiago"); combo.addItem("Pto. Montt");
panelInferior.add(JLabel1); panelInferior.add(JText1);
panelInferior.add(JLabel2); panelInferior.add(JText2);
panelInferior.add(JLabel3); panelInferior.add(JText3);
panelInferior.add(JLabel4); panelInferior.add(JText4); panelInferior.add(JLabel5); panelInferior.add(JText5);
panelInferior.add(JLabel6); panelInferior.add(combo); } public void construyePanelBoton() { // se da formato a panel panelBoton = new JPanel(); panelBoton.setLayout(new FlowLayout(FlowLayout.CENTER));
// se le da accion al boton registrar btnregistrar = new JButton("Registrar"); btnregistrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Registrado"); } }); // se le da accion al boton borrar btnborrar = new JButton("Borrar"); btnborrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Eliminado"); } }); // se le da accion al boton modificar btnmodificar = new JButton("Modificar"); btnmodificar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Modificado"); } });
// se le da accion al boton consultar btnconsultar = new JButton("Consultar"); btnconsultar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Consulta Exitosa"); } }); // se le da accion al boton Limpiar OK!!!!!!!!!!!!!!!!!!!!!!!!! btnlimpiar = new JButton("Limpiar"); btnlimpiar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Datos Limpiados"); JText1.setText(""); JText2.setText(""); JText3.setText(""); JText4.setText(""); JText5.setText(""); combo.setSelectedIndex(0); } }); // aca se agregan los paneles y botones panelBoton.add(btnregistrar); panelBoton.add(btnborrar); panelBoton.add(btnmodificar); panelBoton.add(btnconsultar); panelBoton.add(btnlimpiar);
} public void construyeVentana() { frame = new JFrame(" "); frame.add(panelSuperior); frame.add(panelInferior); frame.add(panelBoton); frame.pack(); frame.setVisible(true); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.setTitle("Ingreso de Datos Clientes Ver. 1.0"); // borde titulo pantalla
}
public static void main(String[] arg) { new MenuPrincipal(); }
}
Título: Re: Consulta sobre código
Publicado por: Mitsu en 27 Octubre 2013, 16:21 pm
Disculpa, pero no entiendo muy bien lo que deseas. ¿Lo que quieres es agregar los datos de los JTextField's a tu Tabla? String ruc = JText1. getText(); String nombre = JText2. getText(); String apellido = JText3. getText(); String direccion = JText4. getText() String telefono = JText5. getText(); String ciudad = combo. getSelectedItem(). toString(); // agregamos los datos a la fila Object Object[] datos = {ruc,nombre,apellido,direccion,telefono,ciudad }; modelo.addRow(datos);
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 28 Octubre 2013, 01:56 am
si amigo, además no me muestra la tabla por pantalla. coloqué tu código y no me resulto............ :( estoy tratando de hacer algo asi (http://1.bp.blogspot.com/-LpvY-Yir4Vw/UQbRVBtVv6I/AAAAAAAAAPc/vhLa7URFUMY/s320/+_001.png) package menu; import javax.swing.JTextField; import javax.swing.JButton; import javax.swing.JPanel;
import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout;
import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.WindowConstants; import javax.swing.JOptionPane; // de aca en adelante para asignar accion al boton import javax.swing.JButton;
import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Scanner;
public class MenuPrincipal{
private JFrame frame; private JPanel panelSuperior; private JPanel panelInferior; private JPanel panelBoton;
private JLabel titulo; private JLabel JLabel1; private JTextField JText1; private JLabel JLabel2; private JTextField JText2; private JLabel JLabel3; private JTextField JText3; private JLabel JLabel4; private JTextField JText4; private JLabel JLabel5; private JTextField JText5; private JLabel JLabel6; private JComboBox combo;
private JButton btnregistrar; private JButton btnconsultar; private JButton btnborrar; private JButton btnmodificar;
private JButton btnlimpiar; private JScrollPane jScrollPane; private JTable tabla; public MenuPrincipal() { construyePanelSuperior(); construyePanelInferior(); construyePanelBoton(); construyeVentana(); } //metodo para agregar las filas int filas=0; private void agregarFila(){ // se crea un modelo para la tabla, el nombre de la variable de la tabla es: tabla DefaultTableModel modelo=(DefaultTableModel) tabla.getModel();
//se agrega la fila en la tabla con un valor vacio modelo.addRow(new Object[filas]);
String rut = JText1.getText(); String nombre = JText2.getText(); String apellido = JText3.getText(); String direccion= JText4.getText(); String telefono = JText5.getText(); String ciudad = combo.getSelectedItem().toString(); // agregamos los datos a la fila Object Object[] datos = {rut,nombre,apellido,direccion,telefono,ciudad}; modelo.addRow(datos); }
public void construyePanelSuperior(){ panelSuperior = new JPanel(); panelSuperior.setLayout(new FlowLayout()); panelSuperior.setBackground(Color.LIGHT_GRAY);
titulo = new JLabel("Ingreso de Datos"); panelSuperior.add(titulo);
}
public void construyePanelInferior() { panelInferior = new JPanel(); panelInferior.setLayout(new GridLayout(3, 8, 12, 30)); // FILAS COLUMNAS // LARGO ANCHO JLabel1 = new JLabel(" Rut : "); JText1 = new JTextField(10); JLabel2 = new JLabel(" Nombre : "); JText2 = new JTextField(10);
JLabel3 = new JLabel(" Apellido : "); JText3 = new JTextField(10);
JLabel4 = new JLabel(" Dirección : "); JText4 = new JTextField(10);
JLabel5 = new JLabel(" Teléfono : "); JText5 = new JTextField(10);
JLabel6 = new JLabel(" Ciudad :"); combo = new JComboBox();
combo.addItem("Valparaiso");// AGREGAR OPCIONES COMBO combo.addItem("Viña del Mar"); combo.addItem("Villa Alemana"); combo.addItem("Santiago"); combo.addItem("Pto. Montt");
panelInferior.add(JLabel1); panelInferior.add(JText1);
panelInferior.add(JLabel2); panelInferior.add(JText2);
panelInferior.add(JLabel3); panelInferior.add(JText3);
panelInferior.add(JLabel4); panelInferior.add(JText4); panelInferior.add(JLabel5); panelInferior.add(JText5);
panelInferior.add(JLabel6); panelInferior.add(combo); } public void construyePanelBoton() { // se da formato a panel panelBoton = new JPanel(); panelBoton.setLayout(new FlowLayout(FlowLayout.CENTER));
// se le da accion al boton registrar btnregistrar = new JButton("Registrar"); btnregistrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Registrado"); } }); // se le da accion al boton borrar btnborrar = new JButton("Borrar"); btnborrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Eliminado"); } }); // se le da accion al boton modificar btnmodificar = new JButton("Modificar"); btnmodificar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Modificado"); } });
// se le da accion al boton consultar btnconsultar = new JButton("Consultar"); btnconsultar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Consulta Exitosa"); } }); // se le da accion al boton Limpiar OK!!!!!!!!!!!!!!!!!!!!!!!!! btnlimpiar = new JButton("Limpiar"); btnlimpiar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Datos Limpiados"); JText1.setText(""); JText2.setText(""); JText3.setText(""); JText4.setText(""); JText5.setText(""); combo.setSelectedIndex(0); } }); // aca se agregan los paneles y botones panelBoton.add(btnregistrar); panelBoton.add(btnborrar); panelBoton.add(btnmodificar); panelBoton.add(btnconsultar); panelBoton.add(btnlimpiar);
} public void construyeVentana() { frame = new JFrame(" "); frame.add(panelSuperior); frame.add(panelInferior); frame.add(panelBoton); frame.pack(); frame.setVisible(true); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.setTitle("Ingreso de Datos Clientes Ver. 1.0"); // borde titulo pantalla
}
public static void main(String[] arg) { new MenuPrincipal(); } }
Título: Re: Consulta sobre código
Publicado por: Mitsu en 28 Octubre 2013, 04:01 am
He probado tu codigo y solo se ve visible un panel de botones... Crear e inicializar la tabla:String nombreColumnas [] = {"Ruc", "Nombre", "Apellido", "Direccion", "Ciudad"}; private void itializeComponent() { jsp1.setViewportView(tabla1); }
Insertar datos en la tabla:private voidd insertarData() { // recuperamos los valores String ruc = JText1. getText(); String nombre = JText2. getText(); String apellido = JText3. getText(); String direccion = JText4. getText() String telefono = JText5. getText(); String ciudad = combo. getSelectedItem(). toString(); // los agregamos a la tabla modelo1. insertRow(modelo1. getRowCount(), new Object[]{ruc, nombre, apellido, direccion, telefono, ciudad }); }
Recuperar datos de la tabla:private void getDatosDeTabla() { int nrow = tabla.getRowCount(); // numero de filas int col=tabla.getColumnCount(); // numero de columnas String[][] sArray =new String[nrow ][col ]; //por si quieres almacenar los datos de tu columna en una matriz del tipo String for(int i=0;i<nrow;i++){ for (int j=0;j<col;j++){ sArray[i][j]=tabla.getModel().getValueAt(i,j).toString(); } } }
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 28 Octubre 2013, 17:11 pm
Primero que todo, muchas gracias por tu ayuda con respecto al código, en que parte debería pegar ese código, lo coloqué donde estaba creando mi tabla y aún no resulta :-\ package menu; import javax.swing.JTextField; import javax.swing.JButton; import javax.swing.JPanel;
import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout;
import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.WindowConstants; import javax.swing.JOptionPane; // de aca en adelante para asignar accion al boton import javax.swing.JButton;
import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Scanner;
public class MenuPrincipal{
private JFrame frame; private JPanel panelSuperior; private JPanel panelInferior; private JPanel panelBoton;
private JLabel titulo; private JLabel JLabel1; private JTextField JText1; private JLabel JLabel2; private JTextField JText2; private JLabel JLabel3; private JTextField JText3; private JLabel JLabel4; private JTextField JText4; private JLabel JLabel5; private JTextField JText5; private JLabel JLabel6; private JComboBox combo;
private JButton btnregistrar; private JButton btnconsultar; private JButton btnborrar; private JButton btnmodificar;
private JButton btnlimpiar; private JScrollPane jScrollPane; private JTable tabla; public MenuPrincipal() { construyePanelSuperior(); construyePanelInferior(); construyePanelBoton(); construyeVentana(); } String nombreColumnas[] = {"Ruc","Nombre","Apellido","Direccion","Ciudad"}; private void itializeComponent() { JScrollPane jsp1 = new JScrollPane(); DefaultTableModel modelo1 = new DefaultTableModel(null,nombreColumnas); JTable tabla1 = new JTable(modelo1); jsp1.setViewportView(tabla1); }
private void insertarData() { // recuperamos los valores String ruc = JText1.getText(); String nombre = JText2.getText(); String apellido = JText3.getText(); String direccion= JText4.getText(); String telefono = JText5.getText(); String ciudad = combo.getSelectedItem().toString(); // los agregamos a la tabla DefaultTableModel modelo1 = null; modelo1.insertRow(modelo1.getRowCount(),new Object[]{ruc, nombre, apellido, direccion, telefono, ciudad}); } private void getDatosDeTabla() { int nrow = tabla.getRowCount(); // numero de filas int col=tabla.getColumnCount(); // numero de columnas String[][] sArray=new String[nrow][col]; //por si quieres almacenar los datos de tu columna en una matriz del tipo String for(int i=0;i<nrow;i++){ for (int j=0;j<col;j++){ sArray[i][j]=tabla.getModel().getValueAt(i,j).toString(); } } } public void construyePanelSuperior(){ panelSuperior = new JPanel(); panelSuperior.setLayout(new FlowLayout()); panelSuperior.setBackground(Color.LIGHT_GRAY);
titulo = new JLabel("Ingreso de Datos"); panelSuperior.add(titulo);
}
public void construyePanelInferior() { panelInferior = new JPanel(); panelInferior.setLayout(new GridLayout(3, 8, 12, 30)); // FILAS COLUMNAS // LARGO ANCHO JLabel1 = new JLabel(" Rut : "); JText1 = new JTextField(10); JLabel2 = new JLabel(" Nombre : "); JText2 = new JTextField(10);
JLabel3 = new JLabel(" Apellido : "); JText3 = new JTextField(10);
JLabel4 = new JLabel(" Dirección : "); JText4 = new JTextField(10);
JLabel5 = new JLabel(" Teléfono : "); JText5 = new JTextField(10);
JLabel6 = new JLabel(" Ciudad :"); combo = new JComboBox();
combo.addItem("Valparaiso");// AGREGAR OPCIONES COMBO combo.addItem("Viña del Mar"); combo.addItem("Villa Alemana"); combo.addItem("Santiago"); combo.addItem("Pto. Montt");
panelInferior.add(JLabel1); panelInferior.add(JText1);
panelInferior.add(JLabel2); panelInferior.add(JText2);
panelInferior.add(JLabel3); panelInferior.add(JText3);
panelInferior.add(JLabel4); panelInferior.add(JText4); panelInferior.add(JLabel5); panelInferior.add(JText5);
panelInferior.add(JLabel6); panelInferior.add(combo); } public void construyePanelBoton() { // se da formato a panel panelBoton = new JPanel(); panelBoton.setLayout(new FlowLayout(FlowLayout.CENTER));
// se le da accion al boton registrar btnregistrar = new JButton("Registrar"); btnregistrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Registrado"); } }); // se le da accion al boton borrar btnborrar = new JButton("Borrar"); btnborrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Eliminado"); } }); // se le da accion al boton modificar btnmodificar = new JButton("Modificar"); btnmodificar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Modificado"); } });
// se le da accion al boton consultar btnconsultar = new JButton("Consultar"); btnconsultar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Consulta Exitosa"); } }); // se le da accion al boton Limpiar OK!!!!!!!!!!!!!!!!!!!!!!!!! btnlimpiar = new JButton("Limpiar"); btnlimpiar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Datos Limpiados"); JText1.setText(""); JText2.setText(""); JText3.setText(""); JText4.setText(""); JText5.setText(""); combo.setSelectedIndex(0); } }); // aca se agregan los paneles y botones panelBoton.add(btnregistrar); panelBoton.add(btnborrar); panelBoton.add(btnmodificar); panelBoton.add(btnconsultar); panelBoton.add(btnlimpiar);
} public void construyeVentana() { frame = new JFrame(" "); frame.add(panelSuperior); frame.add(panelInferior); frame.add(panelBoton); frame.pack(); frame.setVisible(true); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.setTitle("Ingreso de Datos Clientes Ver. 1.0"); // borde titulo pantalla
}
public static void main(String[] arg) { new MenuPrincipal(); } }
Título: Re: Consulta sobre código
Publicado por: Mitsu en 28 Octubre 2013, 17:24 pm
Primero, no crees e instancies tus controles en el constructor. Porque luego de salir del constructor desaparecerán. Primero declara los contorles. private void itializeComponent() { jsp1.setViewportView(tabla1); }
Segundo, tú creaste tu control JScrollPane así: private JScrollPane jScrollPane; Yo lo hice así: Private JScrollPane sp1; ¿Por qué tienes 2? Y en tercer lugar, es obvio que tienes que llamar al método insertarData dentro del botón que va a agregar los datos a la tabla.
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 28 Octubre 2013, 22:46 pm
nada aun :-\ quizás empieze el código de nuevo por que no tiene solución, la idea es hacer un CRUD Y UN JTABLE. :C package menu; import javax.swing.JTextField; import javax.swing.JButton; import javax.swing.JPanel;
import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout;
import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.WindowConstants; import javax.swing.JOptionPane; // de aca en adelante para asignar accion al boton import javax.swing.JButton;
import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Scanner; import java.util.Vector;
public class MenuPrincipal{
private JFrame frame; private JPanel panelSuperior; private JPanel panelInferior; private JPanel panelBoton;
private JLabel titulo; private JLabel JLabel1; private JTextField JText1; private JLabel JLabel2; private JTextField JText2; private JLabel JLabel3; private JTextField JText3; private JLabel JLabel4; private JTextField JText4; private JLabel JLabel5; private JTextField JText5; private JLabel JLabel6; private JComboBox combo;
private JButton btnregistrar; private JButton btnconsultar; private JButton btnborrar; private JButton btnmodificar;
private JButton btnlimpiar; private JScrollPane jScrollPane; private JTable tabla; private void itializeComponent() { jsp1 = new JScrollPane(); Vector nombreColumnas = null; modelo1 = new DefaultTableModel(null,nombreColumnas); tabla1 = new JTable(modelo1); jsp1.setViewportView(tabla1); } public MenuPrincipal() { construyePanelSuperior(); construyePanelInferior(); construyePanelBoton(); construyeVentana(); }
private DefaultTableModel modelo1; private JTable tabla1; JScrollPane jsp1; public void construyePanelSuperior(){ panelSuperior = new JPanel(); panelSuperior.setLayout(new FlowLayout()); panelSuperior.setBackground(Color.LIGHT_GRAY);
titulo = new JLabel("Ingreso de Datos"); panelSuperior.add(titulo);
}
public void construyePanelInferior() { panelInferior = new JPanel(); panelInferior.setLayout(new GridLayout(3, 8, 12, 30)); // FILAS COLUMNAS // LARGO ANCHO JLabel1 = new JLabel(" Rut : "); JText1 = new JTextField(10); JLabel2 = new JLabel(" Nombre : "); JText2 = new JTextField(10);
JLabel3 = new JLabel(" Apellido : "); JText3 = new JTextField(10);
JLabel4 = new JLabel(" Dirección : "); JText4 = new JTextField(10);
JLabel5 = new JLabel(" Teléfono : "); JText5 = new JTextField(10);
JLabel6 = new JLabel(" Ciudad :"); combo = new JComboBox();
combo.addItem("Valparaiso");// AGREGAR OPCIONES COMBO combo.addItem("Viña del Mar"); combo.addItem("Villa Alemana"); combo.addItem("Santiago"); combo.addItem("Pto. Montt");
panelInferior.add(JLabel1); panelInferior.add(JText1);
panelInferior.add(JLabel2); panelInferior.add(JText2);
panelInferior.add(JLabel3); panelInferior.add(JText3);
panelInferior.add(JLabel4); panelInferior.add(JText4); panelInferior.add(JLabel5); panelInferior.add(JText5);
panelInferior.add(JLabel6); panelInferior.add(combo); } public void construyePanelBoton() { // se da formato a panel panelBoton = new JPanel(); panelBoton.setLayout(new FlowLayout(FlowLayout.CENTER));
// se le da accion al boton registrar btnregistrar = new JButton("Registrar"); btnregistrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Registrado"); } }); // se le da accion al boton borrar btnborrar = new JButton("Borrar"); btnborrar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Eliminado"); } }); // se le da accion al boton modificar btnmodificar = new JButton("Modificar"); btnmodificar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Usuario Modificado"); } });
// se le da accion al boton consultar btnconsultar = new JButton("Consultar"); btnconsultar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Consulta Exitosa"); } }); // se le da accion al boton Limpiar OK!!!!!!!!!!!!!!!!!!!!!!!!! btnlimpiar = new JButton("Limpiar"); btnlimpiar.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent ae){ JOptionPane.showMessageDialog(null,"Datos Limpiados"); JText1.setText(""); JText2.setText(""); JText3.setText(""); JText4.setText(""); JText5.setText(""); combo.setSelectedIndex(0); } }); // aca se agregan los paneles y botones panelBoton.add(btnregistrar); panelBoton.add(btnborrar); panelBoton.add(btnmodificar); panelBoton.add(btnconsultar); panelBoton.add(btnlimpiar);
} public void construyeVentana() { frame = new JFrame(" "); frame.add(panelSuperior); frame.add(panelInferior); frame.add(panelBoton); frame.pack(); frame.setVisible(true); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.setTitle("Ingreso de Datos Clientes Ver. 1.0"); // borde titulo pantalla
}
public static void main(String[] arg) { new MenuPrincipal(); } }
Título: Re: Consulta sobre código
Publicado por: Mitsu en 28 Octubre 2013, 22:59 pm
Edit: No había fijado que habías declarado los controles abajo del init()
Coloca las etiqueta de codigo Java en tu código para poder ver bien: [ code==java ] (sin espacios).
Saludos.
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 28 Octubre 2013, 23:19 pm
:huh:
ME pondré hacer otro codigo, muchas gracias de todos modo. :-(
NO SOLUCIONADO.
Título: Re: Consulta sobre código
Publicado por: Mitsu en 28 Octubre 2013, 23:35 pm
Coloca tu código dentro de las etiquetas Java para poder visualizar mejor.
Déjame probar tu código.
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 28 Octubre 2013, 23:49 pm
como hago eso amigo?
Título: Re: Consulta sobre código
Publicado por: Mitsu en 28 Octubre 2013, 23:58 pm
Tienes que colocar el code entre:
[ code==java]
[ / code]
Sin espacios.
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 29 Octubre 2013, 00:15 am
te debo tener loco con tanta pregunta, discullpame Te explico de forma forma, estoy intentando hacer un CRUD, para lo cual, estoy tratando de insertar un JTABLE, para que me muestre los datos ingresados, un boton ingresar, modificar, consultar, eliminar, y limpiar, cuando inserte JTABLE, se me borraron los campos de nombre, direccion, etc... grcias. package menu; import javax.swing.JTextField; import javax.swing.JButton; import javax.swing.JPanel; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.WindowConstants; import javax.swing.JOptionPane; // de aca en adelante para asignar accion al boton import javax.swing.JButton; import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Scanner; import java.util.Vector; public class MenuPrincipal{ private void itializeComponent() { int nombreColumnas; jsp1.setViewportView(tabla1); } public MenuPrincipal() { construyePanelSuperior(); construyePanelInferior(); construyePanelBoton(); construyeVentana(); } public void construyePanelSuperior(){ panelSuperior. setBackground(Color. LIGHT_GRAY); titulo = new JLabel("Ingreso de Datos"); panelSuperior.add(titulo); } public void construyePanelInferior() { panelInferior. setLayout(new GridLayout(3, 8, 12, 30)); // FILAS COLUMNAS // LARGO ANCHO JLabel1 = new JLabel(" Rut : "); JLabel2 = new JLabel(" Nombre : "); JLabel3 = new JLabel(" Apellido : "); JLabel4 = new JLabel(" Dirección : "); JLabel5 = new JLabel(" Teléfono : "); JLabel6 = new JLabel(" Ciudad :"); combo.addItem("Valparaiso");// AGREGAR OPCIONES COMBO combo.addItem("Viña del Mar"); combo.addItem("Villa Alemana"); combo.addItem("Santiago"); combo.addItem("Pto. Montt"); panelInferior.add(JLabel1); panelInferior.add(JText1); panelInferior.add(JLabel2); panelInferior.add(JText2); panelInferior.add(JLabel3); panelInferior.add(JText3); panelInferior.add(JLabel4); panelInferior.add(JText4); panelInferior.add(JLabel5); panelInferior.add(JText5); panelInferior.add(JLabel6); panelInferior.add(combo); } public void construyePanelBoton() { // se da formato a panel // se le da accion al boton registrar btnregistrar = new JButton("Registrar"); JOptionPane. showMessageDialog(null, "Usuario Registrado"); } }); // se le da accion al boton borrar JOptionPane. showMessageDialog(null, "Usuario Eliminado"); } }); // se le da accion al boton modificar btnmodificar = new JButton("Modificar"); JOptionPane. showMessageDialog(null, "Usuario Modificado"); } }); // se le da accion al boton consultar btnconsultar = new JButton("Consultar"); JOptionPane. showMessageDialog(null, "Consulta Exitosa"); } }); // se le da accion al boton Limpiar OK!!!!!!!!!!!!!!!!!!!!!!!!! btnlimpiar = new JButton("Limpiar"); JText1.setText(""); JText2.setText(""); JText3.setText(""); JText4.setText(""); JText5.setText(""); combo.setSelectedIndex(0); } }); // aca se agregan los paneles y botones panelBoton.add(btnregistrar); panelBoton.add(btnborrar); panelBoton.add(btnmodificar); panelBoton.add(btnconsultar); panelBoton.add(btnlimpiar); } public void construyeVentana() { frame.add(panelSuperior); frame.add(panelInferior); frame.add(panelBoton); frame.pack(); frame.setVisible(true); frame.setTitle("Ingreso de Datos Clientes Ver. 1.0"); // borde titulo pantalla } public static void main (String[] arg ) { new MenuPrincipal(); } }[ / code]
Título: Re: Consulta sobre código
Publicado por: Mitsu en 29 Octubre 2013, 01:37 am
Disuclpa, no estaba. Aquí te dejo un pequeño code, no lo he probado pero debería funcionar. Agrega y elimina filas: import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.JTextField; import javax.swing.table.DefaultTableModel; { "Nombre","Apellido P.","Apellido M.","DNI" }; public static void main (String... args) { new Tabla(); } public Tabla() { super("Ejemplo Tabla"); setLayout(null); btnRemove = new JButton("Eliminar"); lblNombre.setBounds(20,20,80,20); lblApellidoP.setBounds(250,20,80,20); lblApellidoM.setBounds(20,70,80,20); lblDNI.setBounds(250,70,80,20); txtNombre.setBounds(130,22,100,25); txtApellidoP.setBounds(330,22,100,25); txtApellidoM.setBounds(130,72,100,25); txtDNI.setBounds(330,72,100,25); btnAdd.setBounds(30,102,90,35); btnAdd.addActionListener(this); btnRemove.setBounds(130,102,90,35); btnRemove.addActionListener(this); //Array bidimensional de objetos con los datos de la tabla Object[][] data = {{null, null, null, null, null} }; //Creacion de la tabla table. setPreferredScrollableViewportSize(new Dimension(500, 80)); //Creamos un scrollpanel y se lo agregamos a la tabla scrollpane.setBounds(20, 142, 400, 120); this.add(lblNombre); this.add(txtNombre); this.add(lblApellidoP); this.add(txtApellidoP); this.add(lblApellidoM); this.add(txtApellidoM); this.add(lblDNI); this.add(txtDNI); this.add(btnAdd); this.add(btnRemove); this.add(scrollpane); this.setSize(500,500); this.setVisible(true); this. setDefaultCloseOperation(JFrame. DISPOSE_ON_CLOSE); } /* ********************************************************************************************************* EVENTOS DE LOS BOTONES * *********************************************************************************************************/ @Override if(e.getSource() == btnAdd){ String nombre = txtNombre. getText(); String apellido = txtApellidoP. getText(); String apellidom = txtApellidoM. getText(); String dni = txtDNI. getText(); modelo. addRow(new Object[]{nombre,apellido,apellidom,dni }); } else if(e.getSource() == btnRemove) { try { modelo.removeRow(table.getSelectedRow()); } } } }
Las celdas son editables por defecto en los JTable. Para el resto, te toca investigar ;)
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 29 Octubre 2013, 02:23 am
Eres un genio, como hiciste eso, yo que estuve bastante tiempo trtando de hacerlo, mi codigo es gigante comparado al tuyo, mil gracias, investigare el resto, ;)
Título: Re: Consulta sobre código
Publicado por: Mitsu en 29 Octubre 2013, 02:40 am
Me alegro que te haya servido. Sigue practicando!
Saludos.
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 29 Octubre 2013, 02:44 am
AMIGO ME RECOMIENDA ALGUN LIBRO PARA PRINCIPIANTES C;
Título: Re: Consulta sobre código
Publicado por: Mitsu en 29 Octubre 2013, 02:56 am
Como programar en Java - Deitel: http://depositfiles.org/files/rqppw0qp4
También, Pensar en Java de Bruce Eckel.
Título: Re: Consulta sobre código
Publicado por: SebastianJava en 29 Octubre 2013, 03:02 am
gracias amigo
|