Trabalhando com o JFrame + swing no netbeans

8 respostas
A

Oi pessoal, resolvi mexer um pouco com swing só que tem uma coisa que eu ainda não descobri, criei o JFrame no netbeans, criei os menus (tudo pela interface gráfica do netbeans), criei a primeira “cara” do jframe, onde ocorre um cadastro simples no banco de dados (já funcionando), só não sei como fazer para que, ao clicar no link do menu (Arquivo > Novo Registro) ele abra na mesma janela do swing o formulário. Com relação à programação não está muito complicado. help plz

8 Respostas

walissongpi

Voce deve colocar no evento do menu (novo registro) o comando: nomeDoFrame.setVisible(true);
Lembrando que o frame já deve estar inserido no ContentPane();

é isso ?

A

obrigado pela resposta, vou tentar aqui e postar o resultado.

Metal_Java_Full

Eu sugeriria um JInternalFrame. Ele serve direitinho pra o que você quer, pois atende ao chamado do Frame principal, definido por você mesmo!
Ou outra opção seria o JDialog, que também tem essa função…
P.S: Algumas coisas de interface não precisam se deter apenas ao Drag and Drop do NetBeans. Você pode usar o DnD e código feito à mão (mais simples, é claro) juntos!!

vlew :!:

A

Criei o JPanel que eu estou querendo exibir já. No actionPerformed do meu menu eu coloquei assim:

private void adicionarSalaActionPerformed(java.awt.event.ActionEvent evt) {
        new adicionaSala().setVisible(true);
    }

so que quando eu clico não acontece nada.
e eu tb não entendi o que você havia dito

eu tenho que criar este contentPane? Se tenho, onde que o crio? é o Painel do netbeans? help rs

Metal_Java_Full

Você pode criar o “Container” dentro do seu próprio construtor…

public class Exemplo extends JFrame{ Exemplo() { Container cp = getContentPane(); cp.add(... Seus componentes); } }
E eu acho que é o contrário: O seu container deve estar inserido no frame…

vlew :!:

A

algo assim?

public class gerap extends javax.swing.JFrame {

    /** Creates new form Swing */
    public gerap() {
        Container cp = getContentPane();
        cp.add(new adicionaSala());
        initComponents();
    }
A

ainda n funciona, vou postar o código inteiro:

package gerap;

import java.awt.Container;


public class gerap extends javax.swing.JFrame {

    /** Creates new form Swing */
    public gerap() {
        Container cp = getContentPane();
        cp.add(new adicionaSala());
        initComponents();
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        jMenuBar1 = new javax.swing.JMenuBar();
        geral = new javax.swing.JMenu();
        anotacoes = new javax.swing.JMenu();
        minhasAnot = new javax.swing.JMenuItem();
        notaAnot = new javax.swing.JMenuItem();
        deletaAnot = new javax.swing.JMenuItem();
        jSeparator1 = new javax.swing.JSeparator();
        novoFunci = new javax.swing.JMenuItem();
        removeFunci = new javax.swing.JMenuItem();
        alteraFunci = new javax.swing.JMenuItem();
        listarFunci = new javax.swing.JMenuItem();
        procuraFunci = new javax.swing.JMenuItem();
        jSeparator2 = new javax.swing.JSeparator();
        sair = new javax.swing.JMenuItem();
        salaReuniao = new javax.swing.JMenu();
        sala = new javax.swing.JMenu();
        adicionarSala = new javax.swing.JMenuItem();
        alterarSala = new javax.swing.JMenuItem();
        removerSala = new javax.swing.JMenuItem();
        listarSala = new javax.swing.JMenuItem();
        administradores = new javax.swing.JMenu();
        adicionarAdmin = new javax.swing.JMenuItem();
        removerAdmin = new javax.swing.JMenuItem();
        listarAdmin = new javax.swing.JMenuItem();
        reservas = new javax.swing.JMenu();
        adicionarReserva = new javax.swing.JMenuItem();
        removerReserva = new javax.swing.JMenuItem();
        alterarReserva = new javax.swing.JMenuItem();
        listarReserva = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        geral.setText("Geral");

        anotacoes.setText("Anotações");

        minhasAnot.setText("Minhas anotações");
        anotacoes.add(minhasAnot);

        notaAnot.setText("Nova anotação");
        anotacoes.add(notaAnot);

        deletaAnot.setText("Deletar todas");
        anotacoes.add(deletaAnot);

        geral.add(anotacoes);
        geral.add(jSeparator1);

        novoFunci.setText("Adicionar novo funcionário");
        geral.add(novoFunci);

        removeFunci.setText("Remover Funcionário");
        geral.add(removeFunci);

        alteraFunci.setText("Alterar Funcionário");
        geral.add(alteraFunci);

        listarFunci.setText("Listar todos");
        geral.add(listarFunci);

        procuraFunci.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F, java.awt.event.InputEvent.CTRL_MASK));
        procuraFunci.setText("Procurar");
        geral.add(procuraFunci);
        geral.add(jSeparator2);

        sair.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_W, java.awt.event.InputEvent.CTRL_MASK));
        sair.setText("Sair");
        sair.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                sairActionPerformed(evt);
            }
        });
        geral.add(sair);

        jMenuBar1.add(geral);

        salaReuniao.setText("Sala de Reunião");

        sala.setText("Sala");

        adicionarSala.setText("Adicionar");
        adicionarSala.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                adicionarSalaActionPerformed(evt);
            }
        });
        sala.add(adicionarSala);

        alterarSala.setText("Alterar");
        sala.add(alterarSala);

        removerSala.setText("Remover");
        sala.add(removerSala);

        listarSala.setText("Listar");
        sala.add(listarSala);

        salaReuniao.add(sala);

        administradores.setText("Administradores");

        adicionarAdmin.setText("Adicionar");
        administradores.add(adicionarAdmin);

        removerAdmin.setText("Remover");
        administradores.add(removerAdmin);

        listarAdmin.setText("Listar");
        administradores.add(listarAdmin);

        salaReuniao.add(administradores);

        reservas.setText("Reservas");

        adicionarReserva.setText("Adicionar");
        reservas.add(adicionarReserva);

        removerReserva.setText("Remover");
        reservas.add(removerReserva);

        alterarReserva.setText("Alterar");
        reservas.add(alterarReserva);

        listarReserva.setText("Listar Todos");
        reservas.add(listarReserva);

        salaReuniao.add(reservas);

        jMenuBar1.add(salaReuniao);

        setJMenuBar(jMenuBar1);

        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, 281, Short.MAX_VALUE)
        );

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

    private void sairActionPerformed(java.awt.event.ActionEvent evt) {
        this.dispose();
    }

    private void adicionarSalaActionPerformed(java.awt.event.ActionEvent evt) {
        new adicionaSala().setVisible(true);
    }

    /**
    * @param args the command line arguments
    */
    /*public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new gerap().setVisible(true);
            }
        });
    }*/

    // Variables declaration - do not modify
    private javax.swing.JMenuItem adicionarAdmin;
    private javax.swing.JMenuItem adicionarReserva;
    private javax.swing.JMenuItem adicionarSala;
    private javax.swing.JMenu administradores;
    private javax.swing.JMenuItem alteraFunci;
    private javax.swing.JMenuItem alterarReserva;
    private javax.swing.JMenuItem alterarSala;
    private javax.swing.JMenu anotacoes;
    private javax.swing.JMenuItem deletaAnot;
    private javax.swing.JMenu geral;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JSeparator jSeparator2;
    private javax.swing.JMenuItem listarAdmin;
    private javax.swing.JMenuItem listarFunci;
    private javax.swing.JMenuItem listarReserva;
    private javax.swing.JMenuItem listarSala;
    private javax.swing.JMenuItem minhasAnot;
    private javax.swing.JMenuItem notaAnot;
    private javax.swing.JMenuItem novoFunci;
    private javax.swing.JMenuItem procuraFunci;
    private javax.swing.JMenuItem removeFunci;
    private javax.swing.JMenuItem removerAdmin;
    private javax.swing.JMenuItem removerReserva;
    private javax.swing.JMenuItem removerSala;
    private javax.swing.JMenu reservas;
    private javax.swing.JMenuItem sair;
    private javax.swing.JMenu sala;
    private javax.swing.JMenu salaReuniao;
    // End of variables declaration

}
Metal_Java_Full

Cara o contentpane eh oco se fose um container secundario onde você adiciona seus componentes e depois o add ao frame!
Você terá de cria-lo e ir add seus componentes (todos).
Depois vc o add ao frame!

So isso!
:!:

Criado 10 de fevereiro de 2010
Ultima resposta 11 de fev. de 2010
Respostas 8
Participantes 3