elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  JInternalFrame :S
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: JInternalFrame :S  (Leído 6,679 veces)
porris

Desconectado Desconectado

Mensajes: 13


Ver Perfil
JInternalFrame :S
« en: 29 Agosto 2010, 04:53 am »

Hola a todos, soy nuevo en este foro y en el mundo de Java y tengo una duda con el componente JInternalFrame.
no logro que cuando le de click a  un menu  o boton, me haga visible 1 y solo una ventana;osea que cuando le de click nuevamente en el mismo  menu o boton no haga visible otra ves la misma ventana que ya esta visible, al menos que le ventana este cerrada.
muchas gracias de ante mano


En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: JInternalFrame :S
« Respuesta #1 en: 29 Agosto 2010, 04:57 am »

NO te entendi nada :xD explícate mas o tal vez coloca codigo


« Última modificación: 29 Agosto 2010, 05:03 am por LEYER » En línea

porris

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: JInternalFrame :S
« Respuesta #2 en: 29 Agosto 2010, 06:03 am »

mira lo que quiero hacer es que cuando le de mas de 2 veces click a el menu Directorio - Cliente, me aparece mas de  un frame interno, y si le vuelvo a dar click me aparece otra ves la ventana y asi se va, lo que quiero es que cuando le de click de nuevo al menu no muestre otra ves la ventana.

aqui dejo un codigo con el que estoy practicado,


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class inicial extends JFrame {

   private JDesktopPane elEscritorio;


   // configurar GUI
   public inicial()
   {
      super( "Uso de objetos JMenu" );

      elEscritorio = new JDesktopPane();
      getContentPane().add( elEscritorio );

    //  UIManager.setLookAndFeel( new com.nilo.plaf.nimrod.NimRODLookAndFeel());


      // establecer menú Archivo y sus elementos de menú
      JMenu menuArchivo = new JMenu( "Archivo" );
      menuArchivo.setMnemonic( 'A' );

      // establecer elemento de menú Acerca de...
      JMenuItem elementoAcerca = new JMenuItem( "Acerca de..." );
      elementoAcerca.setMnemonic( 'c' );
      menuArchivo.add( elementoAcerca );
      elementoAcerca.addActionListener(

         new ActionListener() {  // clase interna anónima

            // mostrar cuadro de diálogo de mensaje cuando el usuario seleccione Acerca de...
            public void actionPerformed( ActionEvent evento )
            {
               JOptionPane.showMessageDialog( inicial.this,
                  "Éste es un ejemplo\ndel uso de menús",
                  "Acerca de", JOptionPane.PLAIN_MESSAGE );
            }

         }  // fin de la clase interna anónima

      ); // fin de la llamada a addActionListener

      // establecer elemento de menú Salir
      JMenuItem elementoSalir = new JMenuItem( "Salir" );
      elementoSalir.setMnemonic( 'S' );
      menuArchivo.add( elementoSalir );
      elementoSalir.addActionListener(

         new ActionListener() {  // clase interna anónima

            // terminar la aplicación cuando el usuario haga clic en elementoSalir
            public void actionPerformed( ActionEvent evento )
            {
               System.exit( 0 );
            }

         }  // fin de la clase interna anónima

      ); // fin de la llamada a addActionListener

      // crear barra de menús y adjuntarla a la ventana PruebaMenu

      JMenuBar barra = new JMenuBar();
      setJMenuBar( barra );
      barra.add( menuArchivo );

      //**********************************************************
      JMenu menuDirectorio = new JMenu( "Directorio" );
      menuArchivo.setMnemonic( 'D' );

      JMenuItem clientes = new JMenuItem( "Clientes" );
      clientes.setMnemonic( 'C' );
      menuDirectorio.add( clientes );
      clientes.addActionListener(

         new ActionListener() {  // clase interna anónima

            // mostrar nueva ventana interna
            public void actionPerformed( ActionEvent evento ) {


               // crear marco interno
               JInternalFrame marco = new JInternalFrame(
                  "Creacion de Clientes", true, true, true, true );



               // adjuntar panel al panel de contenido del marco interno


               MiJPanel panel = new MiJPanel();

            marco.getContentPane().add( panel, BorderLayout.CENTER );






               // establecer tamaño de marco interno en el tamaño de su contenido

      marco.pack();






               // adjuntar marco interno al escritorio y mostrarlo
               elEscritorio.add( marco );
               marco.setVisible( true );
            }

         } // fin de la clase interna anónima
      ); // fin de la llamada a addActionListener







      JMenuItem aerolineas = new JMenuItem( "Aerolineas" );
      aerolineas.setMnemonic( 'A' );
      menuDirectorio.add( aerolineas );

      barra.add( menuDirectorio );
      //***********************************************************
      JMenu menuConsultas = new JMenu( "Consultas" );
      menuConsultas.setMnemonic( 'o' );

      JMenuItem directorio = new JMenuItem( "Directorio" );
      directorio.setMnemonic( 'd' );
      menuConsultas.add( directorio );

      JMenuItem movimiento = new JMenuItem( "Movimientos" );
      movimiento.setMnemonic( 'm' );
      menuConsultas.add( movimiento );

      barra.add( menuConsultas );

      //***********************************************************

      JMenu menuInformes = new JMenu( "Informes" );
      menuConsultas.setMnemonic( 'I' );
      //----------------------------------------------------------
      JMenu cartera = new JMenu( "Cartera" );
      cartera.setMnemonic( 'c' );

      JMenuItem Dirclientes = new JMenuItem( "Directorio de Clientes" );
      Dirclientes.setMnemonic( 'D' );
      cartera.add( Dirclientes );

      JMenuItem EstaCartera = new JMenuItem( "Estado de Cartera" );
      EstaCartera.setMnemonic( 'E' );
      cartera.add( EstaCartera );

      JMenuItem EstaDetalllado = new JMenuItem( "Estado Detallado" );
      EstaDetalllado.setMnemonic( 'd' );
      cartera.add( EstaDetalllado );

      JMenuItem MovCarte = new JMenuItem( "Movimiento de Cartera" );
      MovCarte.setMnemonic( 'M' );
      cartera.add( MovCarte );

      JMenuItem MovDetalla = new JMenuItem( "Movimiento Detallado" );
      MovDetalla.setMnemonic( 'e' );
      cartera.add( MovDetalla );
      menuInformes.add( cartera );

      //----------------------------------------------------------

      JMenu facturas = new JMenu( "Facturas" );
      facturas.setMnemonic( 'f' );

      JMenuItem Concfact = new JMenuItem( "Concecutivo de Facturas" );
      Concfact.setMnemonic( 'C' );
      facturas.add( Concfact );

      JMenuItem Factanula = new JMenuItem( "Facturas Anuladas" );
      Factanula.setMnemonic( 'F' );
      facturas.add( Factanula );

      JMenuItem Movfact = new JMenuItem( "Movimiento de Facturas" );
      Movfact.setMnemonic( 'M' );
      facturas.add( Movfact );

      JMenuItem Movdetalla = new JMenuItem( "Movimiento Detallado" );
      Movdetalla.setMnemonic( 'D' );
      facturas.add( Movdetalla );
      menuInformes.add( facturas );

      //------------------------------------------------------------

      JMenu Infaerolineas = new JMenu( "Aerolineas" );
      Infaerolineas.setMnemonic( 'a' );

      JMenuItem Dirairlines = new JMenuItem( "Directorio de Aeolineas" );
      Dirairlines.setMnemonic( 'D' );
      Infaerolineas.add( Dirairlines );

      JMenuItem Movairlines = new JMenuItem( "Movimiento de Aerolineas" );
      Movairlines.setMnemonic( 'M' );
      Infaerolineas.add( Movairlines );
      menuInformes.add( Infaerolineas );

      //------------------------------------------------------------

      JMenuItem auditoria = new JMenuItem( "Auditoria" );
      auditoria.setMnemonic( 'u' );
      menuInformes.add( auditoria );

      //------------------------------------------------------------
      JMenu SABRE = new JMenu( "SABRE" );
      SABRE.setMnemonic( 'S' );

      JMenuItem Records = new JMenuItem( "Records" );
      Records.setMnemonic( 'R' );
      SABRE.add( Records );

      JMenuItem MovSABRE = new JMenuItem( "Movimiento de Facturas" );
      MovSABRE.setMnemonic( 'M' );
      SABRE.add( MovSABRE );

      JMenuItem FactanulaSABRE = new JMenuItem( "Facturas Anuladas" );
      FactanulaSABRE.setMnemonic( 'F' );
      SABRE.add( FactanulaSABRE );
      menuInformes.add( SABRE );

      barra.add( menuInformes );

      //***********************************************************

      JMenu menuContabilizacion = new JMenu( "Contabilizacion" );
      menuContabilizacion.setMnemonic( 'C' );

      JMenuItem Defconcep = new JMenuItem( "Definicion de Conceptos" );
      Defconcep.setMnemonic( 'D' );
      menuContabilizacion.add( Defconcep );

      JMenuItem Export = new JMenuItem( "Exportar Informacion" );
      Export.setMnemonic( 'E' );
      menuContabilizacion.add( Export );

      barra.add( menuContabilizacion );

      //***********************************************************

      JMenu menuConfigura = new JMenu( "Configuracion" );
      menuConsultas.setMnemonic( 'f' );

      JMenuItem configGene = new JMenuItem( "Configuracion General" );
      configGene.setMnemonic( 'C' );
      menuConfigura.add( configGene );

      JMenuItem parSABRE = new JMenuItem( "Parametros de SABRE" );
      parSABRE.setMnemonic( 's' );
      menuConfigura.add( parSABRE );

      barra.add( menuConfigura );





      getContentPane().setBackground( Color.CYAN );

      setSize( 800, 600 );
      setVisible( true );



   } // fin del constructor



//Read more: http://foro.elhacker.net/java/guardar_accion_con_el_comando_jinternalframe-t227332.0.html#ixzz0xx8EnKSs/
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                       

    /**
    * @param args the command line arguments
    */

   public static void main( String args[] )
   {
      inicial aplicacion = new inicial();
      aplicacion.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
   }



//Read more: http://foro.elhacker.net/java/guardar_accion_con_el_comando_jinternalframe-t227332.0.html#ixzz0xx8Lr01e

    // Variables declaration - do not modify                     
    // End of variables declaration                   

   public class MiJPanel extends JPanel {

   private Container contenedor;
   private GridBagLayout esquema;
   private GridBagConstraints restricciones;

   // cargar imagen
   public MiJPanel()
   {
      contenedor = new Container();
      esquema = new GridBagLayout();
     contenedor.setLayout( esquema );

      // instanciar restricciones de GridBagLayout
      restricciones = new GridBagConstraints();

      // crear componentes de GUI
      JLabel id = new JLabel("Identificacion");
      JLabel Nombre = new JLabel("Nombre");
      JLabel Direccion = new JLabel("Direccion");
      JLabel Telefono = new JLabel("Telefono");
      JLabel email = new JLabel("email");
      JLabel tipo = new JLabel("Tipo");
      JTextField tid = new JTextField( "", 10 );
      JTextField tnombre = new JTextField( "", 20 );
      JTextField tdireccion = new JTextField( "",20 );
      JTextField ttelefono = new JTextField( "",10 );
      JTextField temail = new JTextField( "",10 );


      String nombres[] = { "Cedula de Ciudadania", "NIT", "Tarjeta de Identidad" };
      JComboBox cuadroCombinado = new JComboBox( nombres );


      JButton Aceptar = new JButton( "Aceptar" );
      JButton Cancelar = new JButton( "Cancelar" );


      restricciones.weightx = 0;
      restricciones.weighty = 0;
      restricciones.fill = GridBagConstraints.BOTH;

      agregarComponente( id, 0, 0, 1, 1 );


      agregarComponente(  Nombre, 1, 0, 1, 1 );


      agregarComponente(  Direccion, 2, 0, 1, 1 );


      agregarComponente(  Telefono, 3, 0, 1, 1 );


      agregarComponente(  email, 3, 2, 1, 1 );


      agregarComponente(  tipo, 0, 2, 1, 1 );


      agregarComponente(  tid, 0, 1, 1, 1 );


      agregarComponente(  tnombre, 1, 1, 4, 1 );


      agregarComponente(  tdireccion, 2, 1, 4, 1 );


      agregarComponente(  ttelefono, 3, 1, 1, 1 );


      agregarComponente( temail, 3, 3, 1, 1 );


      agregarComponente( cuadroCombinado, 0, 3, 1, 1 );



     add(contenedor);


      setSize( 100, 150 );
      setVisible( true );
   }

   public Dimension getPreferredSize()
   {
      return new Dimension( 640,480 );
   }




private void agregarComponente( Component componente,
      int fila, int columna, int anchura, int altura )
   {
      // establecer gridx y gridy
      restricciones.gridx = columna;
      restricciones.gridy = fila;

      // establecer gridwidth y gridheight
      restricciones.gridwidth = anchura;
      restricciones.gridheight = altura;

      // establecer restricciones y agregar componente
      esquema.setConstraints( componente, restricciones );
      contenedor.add( componente );

   }// fin de la clase MiJPanel
}
} // fin de la clase PruebaMenu


si miras cuando le doy click a ese menu Directorio-Cliente, siguen aparesiendo ventanas, y es eso lo que no quiero, quiero que solo aparezca unaves o que aparezca cuando la ventana clientes este cerrada, espero haberme echo entender, gracias :)
En línea

sapito169


Desconectado Desconectado

Mensajes: 628



Ver Perfil
Re: JInternalFrame :S
« Respuesta #3 en: 29 Agosto 2010, 11:02 am »

Código:
public class ventat extends JinternalFrame{
Ventanita v=null;
v.setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE )
public void presionoMenu(){
if(ventanita!=null){
ventanita=new Ventanita();
}

if(!ventanita.isVisible()){
ventanita.setVisible(true);
}
}

}
« Última modificación: 29 Agosto 2010, 11:04 am por sapito169 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
JinternalFrame
Java
mapers 2 4,537 Último mensaje 27 Mayo 2011, 17:52 pm
por mapers
Duda JInternalFrame
Java
visualfree 0 2,915 Último mensaje 3 Junio 2011, 17:32 pm
por visualfree
LLamar a un JinternalFrame
Java
mapers 0 3,084 Último mensaje 25 Junio 2011, 09:07 am
por mapers
Urgente con JInternalFrame
Programación General
JairZS 0 1,617 Último mensaje 29 Agosto 2013, 22:41 pm
por JairZS
Aplicar metodo en ventana hijo Jinternalframe a Jframe
Java
Funkyw0w 0 1,720 Último mensaje 21 Noviembre 2013, 11:54 am
por Funkyw0w
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines