Swing, várias Janelas

3 respostas
israelwm

Antes de tudo, tenho dois dias de java, entaum naum reparem (e naum estou querendo me pagar querendo dizer que aprendi altos porq to viajando mais alto ainda)

Olá, gostaria de saber se tem um método mais eficaz para criar várias
janelas(se é que se chama janela isso q estou fazendo)

Catei o exemplo daki do CRUJ mesmo:

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;


public class SwingExemplo1 extends JFrame
{
    JPanel panel;
    JLabel msg;
    
    public SwingExemplo1()
    {
        super("Java!");
    }
    
    public void criaJanela()
    {        
        panel = new JPanel();
        msg = new JLabel("GUJ.com.br");
        
        panel.add(msg);
        
        getContentPane().add(panel, BorderLayout.CENTER);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        pack();
        setVisible(true);
    }
    
    public static void main(String args[])
    {
        SwingExemplo1 s = new SwingExemplo1();
        s.criaJanela();
    }
}

A bosta toda se resume a uma coisa: eu quero criar várias janelas
diferentes, mas po se for seguir esse caminho vai ficar uma droga, muito
confuso dai tentei fazer a seguinte proeza:

/*Se tiver algum erro de sintaxe ignore pois naum é por isso que desta 
maneira não roda, eu escrevi o codigo aki no forum mesmo */

import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;


public class SwingExemplo1 
{
    public class JanelaPrincipal extends JFrame {
        JPanel panel;
        JLabel msg;
    
        public JanelaPrincipal()
        {
            super("Java!");
        }
    
        public void criaJanelaTipo1()
        {        
            panel = new JPanel();
            msg = new JLabel("GUJ.com.br");
        
            panel.add(msg);
         
            getContentPane().add(panel, BorderLayout.CENTER);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
            pack();
            setVisible(true);
        }

        public void criaJanelaTipo2()
        {        
            //Aqui está igual ao tipo 1, mas é so pra exemplificar
            panel = new JPanel();
            msg = new JLabel("GUJ.com.br");
        
            panel.add(msg);
         
            getContentPane().add(panel, BorderLayout.CENTER);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
            pack();
            setVisible(true);
        }
    }




    public static void main(String args[])
    {
        JanelaPrincipal s = new JanelaPrincipal();
        s.criaJanelaTipo1();
        s.criaJanelaTipo2();

        //monte de coisas q naum escrevi ainda
    }
}

Bom, claro que não funcionou, porq eu naum sei. Gostaria de saber se esta é a melhor forma de gerenciar Janelas(ou seja lá o q for q o Javali chama isso)

OBS: não estou usando nenhuma ferramenta RAD, uso o JCreator.

Valeu feras.

3 Respostas

israelwm
keller

olá Estude sobre o JDesktopPane com ele você trabalha com varios JInternalFrames dentro…

quer um exemplo?
C:\jsdk\demo\jfc\SwingSet2\SwingSet2.jar

já de cara você tem Internal Frames Demo
ai é só olhar na aba Source Code…

Valeu? até mais… :wink:

israelwm

Blz cara, estou dando uma olhada nos exemplos, valeuzão.

Criado 29 de março de 2005
Ultima resposta 30 de mar. de 2005
Respostas 3
Participantes 2