
Como agregar un boton a una pestaña
Publicado por cesar (1 intervención) el 12/12/2013 07:02:05
Estimados amigos se me ha presentado un problema al momento de colocar un boton salir en las pestañas que he creado mediante clases y objetos, se da el caso que cuando ingreso al menu principal al mover el mouse por la pantalla aparece de la nada el boton de la pestaña que se encuentra en otro panel.
De antemano les agradezco su ayuda, gracias.
Aqui les mando parte del codigo que he desarrollado para la pestaña de la opcion de ingresos:
// Clase Principal
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class My_project extends JApplet {
// Declaración de variables globales
//Pestañas
JTabbedPane tabPestañaReserva;
/*JTabbedPane tabPestañaAtencion;*/
PanelRIngreso pnlRIngreso;
PanelRListado pnlRListado;
PanelRAnulacion pnlRAnulacion;
// Creacion de la interfaz gráfica de la GUI
public void init() {
setSize(350,200);
setLayout(null);
/*************************************************/
tabPestañaReserva = new JTabbedPane();
tabPestañaReserva.setBounds(0,0,900,500);
tabPestañaReserva.setTabPlacement(JTabbedPane.TOP);
add(tabPestañaReserva);
pnlRIngreso = new PanelRIngreso(this);
pnlRIngreso.setLocation(0,0);
pnlRIngreso.setVisible(false);
colorFondo(pnlRIngreso);
tabPestañaReserva.addTab(" Ingreso ",pnlRIngreso);
pnlRListado = new PanelRListado(this);
pnlRListado.setLocation(0,0);
pnlRListado.setVisible(false);
colorFondo(pnlRListado);
tabPestañaReserva.addTab(" Listado ",pnlRListado);
pnlRAnulacion = new PanelRAnulacion(this);
pnlRAnulacion.setLocation(0,0);
pnlRAnulacion.setVisible(false);
colorFondo(pnlRAnulacion);
tabPestañaReserva.addTab(" Anulación ",pnlRAnulacion);
}
void cambiarDePanel(JPanel pnlOcultar,JPanel pnlMostrar) {
pnlOcultar.setVisible(false);
pnlMostrar.setVisible(true);
setSize(pnlMostrar.getWidth(),pnlMostrar.getHeight());
}
void colorFondo(JPanel pnlFondo){
pnlFondo.setBackground(new Color(227,227,211));
}
}
//-----------------------------------------------------------------------------------------------------------------------------
//
Clase de creacion de la Pestaña
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class PanelRIngreso extends JPanel implements ActionListener {
private My_project pro;
private JButton btnSalirRI;
public PanelRIngreso(My_project pro){
this.pro=pro;
setLayout(null);
btnSalirRI=new JButton("Salir");
btnSalirRI.setBounds(300,30,120,30);
btnSalirRI.addActionListener(this);
add(btnSalirRI);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==btnSalirRI){
pro.cambiarDePanel(this,pro.pnlMenuPrincipal);
}
}
}
De antemano les agradezco su ayuda, gracias.
Aqui les mando parte del codigo que he desarrollado para la pestaña de la opcion de ingresos:
// Clase Principal
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class My_project extends JApplet {
// Declaración de variables globales
//Pestañas
JTabbedPane tabPestañaReserva;
/*JTabbedPane tabPestañaAtencion;*/
PanelRIngreso pnlRIngreso;
PanelRListado pnlRListado;
PanelRAnulacion pnlRAnulacion;
// Creacion de la interfaz gráfica de la GUI
public void init() {
setSize(350,200);
setLayout(null);
/*************************************************/
tabPestañaReserva = new JTabbedPane();
tabPestañaReserva.setBounds(0,0,900,500);
tabPestañaReserva.setTabPlacement(JTabbedPane.TOP);
add(tabPestañaReserva);
pnlRIngreso = new PanelRIngreso(this);
pnlRIngreso.setLocation(0,0);
pnlRIngreso.setVisible(false);
colorFondo(pnlRIngreso);
tabPestañaReserva.addTab(" Ingreso ",pnlRIngreso);
pnlRListado = new PanelRListado(this);
pnlRListado.setLocation(0,0);
pnlRListado.setVisible(false);
colorFondo(pnlRListado);
tabPestañaReserva.addTab(" Listado ",pnlRListado);
pnlRAnulacion = new PanelRAnulacion(this);
pnlRAnulacion.setLocation(0,0);
pnlRAnulacion.setVisible(false);
colorFondo(pnlRAnulacion);
tabPestañaReserva.addTab(" Anulación ",pnlRAnulacion);
}
void cambiarDePanel(JPanel pnlOcultar,JPanel pnlMostrar) {
pnlOcultar.setVisible(false);
pnlMostrar.setVisible(true);
setSize(pnlMostrar.getWidth(),pnlMostrar.getHeight());
}
void colorFondo(JPanel pnlFondo){
pnlFondo.setBackground(new Color(227,227,211));
}
}
//-----------------------------------------------------------------------------------------------------------------------------
//
Clase de creacion de la Pestaña
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class PanelRIngreso extends JPanel implements ActionListener {
private My_project pro;
private JButton btnSalirRI;
public PanelRIngreso(My_project pro){
this.pro=pro;
setLayout(null);
btnSalirRI=new JButton("Salir");
btnSalirRI.setBounds(300,30,120,30);
btnSalirRI.addActionListener(this);
add(btnSalirRI);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==btnSalirRI){
pro.cambiarDePanel(this,pro.pnlMenuPrincipal);
}
}
}
Valora esta pregunta


0