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

[SOLUCIONADO] Problema de conexion entre un JPanel y JFrame

Estas en el tema de Problema de conexion entre un JPanel y JFrame en el foro de Java en Foros del Web. Hola a todos, buenas tardes, estoy con un pequeño problema que no me deja continuar, la situación es la siguiente: tengo 1 JFrame (FrameCrearMenu) y ...
  #1 (permalink)  
Antiguo 23/04/2016, 15:04
 
Fecha de Ingreso: abril-2016
Mensajes: 16
Antigüedad: 8 años, 6 meses
Puntos: 0
Problema de conexion entre un JPanel y JFrame

Hola a todos, buenas tardes, estoy con un pequeño problema que no me deja continuar, la situación es la siguiente: tengo 1 JFrame (FrameCrearMenu) y 1 JPanel (PanelCrearMenu) por la cual este ultimo recolecta datos en determinados JTextFields, cuando intento generar una instancia de la clase //PanelCrearMenu panelCrearmenu = new PanelCrearMenu();// para ir tomando los datos e insertarlos en una BD, me figuran en blanco. no entiendo que pasa, les paso el codigo del Frame, gracias!"!



public class FrameCrearMenu extends JFrame {

private PanelCrearMenu panelCrearMenu;
private PanelResumendePedido resumenPedido;
private PanelCrearMenuPlatosyBebidas panelCrearMenuPlatosyBebidas;

private Pedido pedido = new Pedido();


private JButton btnAtras = new JButton("Atras");
private JButton btnSiguiente1 = new JButton("Siguiente");
private final JButton btnSiguiente2 = new JButton("Siguiente");
private final JButton btnFinalizar = new JButton("Finalizar");

private String nombre;
private String detallesDomicilio;
private String comentariosMenu;
private int telefonoTribunales;
private String ala;
private int nivel;
private int fiscalia;
private int fiscaliacam;
private int camara;
private int turno;
private int juzgado;
private int asesoria;
private String hora;
private Object menu;
private Object bebidas;
private int total;

public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
FrameCrearMenu frame = new FrameCrearMenu();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}


public FrameCrearMenu() {

panelCrearMenuPlatosyBebidas = new PanelCrearMenuPlatosyBebidas();
panelCrearMenu = new PanelCrearMenu();
panelCrearMenu.setBounds(41, 31, 659, 789);
panelCrearMenu.setVisible(true);
this.setSize(732, 909);
this.setResizable(false);
getContentPane().setLayout(null);
this.getContentPane().add(this.panelCrearMenu);
this.getContentPane().add(panelCrearMenu);
this.setVisible(true);
btnSiguiente1.setBounds(523, 832, 117, 25);
btnSiguiente1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {

PanelCrearMenu panelCrearmenu = new PanelCrearMenu();

nombre = (String) panelCrearmenu.comboBox_NombreTribunales.getSelect edItem();
telefonoTribunales = Integer.parseInt(panelCrearmenu.textField_Tribunal es.getText());
comentariosMenu= panelCrearmenu.textArea_ComentariosMenu.getText();

ala = panelCrearmenu.textField_Ala.getText();
System.out.println("nombre ala:"+ ala); /// ACA PRUEBO A VER QUE HAY DENTRO, Y NO IMPRIME NADA!
/////////////////////////////////////////////////////////////////////////////////////////////////////////


if(panelCrearmenu.textField_Nivel.getText().isEmpt y()){

nivel=0;


}else{


nivel= Integer.parseInt(panelCrearmenu.textField_Nivel.ge tText());


}

if(panelCrearmenu.textField_Fiscalia.getText().isE mpty()){

fiscalia = 0;


}else{


fiscalia=Integer.parseInt(panelCrearmenu.textField _Fiscalia.getText());


}

if(panelCrearmenu.textField_Camara.getText().isEmp ty()){

camara = 0;


}else{


camara=Integer.parseInt(panelCrearmenu.textField_C amara.getText());


}

if(panelCrearmenu.textField_Turno.getText().isEmpt y()){

turno = 0;


}else{


turno=Integer.parseInt(panelCrearmenu.textField_Tu rno.getText());


}

if(panelCrearmenu.textField_FiscaliaCam.getText(). isEmpty()){

fiscaliacam = 0;


}else{


fiscaliacam=Integer.parseInt(panelCrearmenu.textFi eld_FiscaliaCam.getText());


}

if(panelCrearmenu.textField_Juzgado.getText().isEm pty()){

juzgado = 0;


}else{


juzgado=Integer.parseInt(panelCrearmenu.textField_ Juzgado.getText());


}

if(panelCrearmenu.textField_Asesoria.getText().isE mpty()){

asesoria = 0;


}else{


asesoria=Integer.parseInt(panelCrearmenu.textField _Asesoria.getText());


}



hora = (String) panelCrearmenu.comboBox_Hora.getSelectedItem();
System.out.println("imprmirmo nuevo valor hora:"+nombre+comentariosMenu+ala+hora);/// ACA PRUEBO NUEVAMENTE A VER QUE HAY DENTRO, Y NO IMPRIME NADA!
detallesDomicilio = panelCrearmenu.textArea_DetallesDomicilio.getText( );




panelCrearMenu.setVisible(false);
panelCrearMenuPlatosyBebidas.setLocation(0, 0);
panelCrearMenuPlatosyBebidas.setVisible(true);
//panelCrearMenuPlatosyBebidas.setSize(732, 909);
getContentPane().setLayout(null);
panelCrearMenuPlatosyBebidas.setBounds(39, 0, 659, 789);
getContentPane().add(panelCrearMenuPlatosyBebidas) ;
panelCrearMenuPlatosyBebidas.setVisible(true);

btnSiguiente1.setVisible(false);
btnSiguiente2.setVisible(true);

}
});
  #2 (permalink)  
Antiguo 23/04/2016, 15:14
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Problema de conexion entre un JPanel y JFrame

Hola:

Estas creando dos paneles, uno aqui

Código Java:
Ver original
  1. public FrameCrearMenu() {
  2.    panelCrearMenuPlatosyBebidas = new PanelCrearMenuPlatosyBebidas();
  3.    panelCrearMenu = new PanelCrearMenu();
  4.    ....

y otro aquí

Código Java:
Ver original
  1. public void actionPerformed(ActionEvent e) {
  2.    PanelCrearMenu panelCrearmenu = new PanelCrearMenu();
  3.    ...

Al hacer dos news, tienes dos paneles. El primero lo metes en la ventana y lo visualizas, es el que rellena tu usuario y contiene los datos.

El segundo lo creas en el actionPerformed, no lo visualizas, nadie lo rellena, no se ve, está vacío, y es en ese donde recoges los datos.

Prueba simplemente a no declarar ni hacer new del panel dentro del actionPerformed(), para que use la variable que ya tienes declarada y rellena fuera.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 28/04/2016, 14:20
 
Fecha de Ingreso: abril-2016
Mensajes: 16
Antigüedad: 8 años, 6 meses
Puntos: 0
Exclamación Respuesta: Problema de conexion entre un JPanel y JFrame

Hola chuidiang buenas tardes!, efectivamente, estaba generando 2 instancias en una misma clase:


ACA

public FrameCrearMenu() {
panelCrearMenuPlatosyBebidas = new PanelCrearMenuPlatosyBebidas();
panelCrearMenu = new PanelCrearMen


Y ACA:

public void actionPerformed(ActionEvent e) {
PanelCrearMenu panelCrearmenu = new PanelCrearMenu();
...

Elimine el que estaba dentro del action listener y ASUNTO SOLUCIONADO! GRACIAS!!!

Etiquetas: clase, conexion, jframe, jpanel, string, valor
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 10:33.