Problema para inserir um Jbutton em um Jpanel

6 respostas
W

Olá,

estou com a seguinte dificuldade, tenho um Jpanel e estou tentando inserir um Jbutton dentro do mesmo pelo netbeans, porem quando eu executo o programa o botão não aparece dentro do Jpanel, mais la na opção “projeto” do netbeans o botão consta.

Alguem poderia me ajudar?

Grato.

6 Respostas

Rafael_Mesquita_Mour

Poderia inserir o código para que o pessoal do GUJ tente te ajudar?

W

Segue as partes do código referente somente ao botão:

private javax.swing.JButton btnSalvarComposicao;

btnSalvarComposicao = new javax.swing.JButton();

btnSalvarComposicao.setText("Adicionar");

 .addComponent(btnSalvarComposicao, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.addComponent(btnSalvarComposicao)

btnSalvarComposicao.getAccessibleContext().setAccessibleParent(null);

Grato.

Rafael_Mesquita_Mour

Cara, um conselho que eu te dou é:

Diminua as importações estáticas, fica horrível pra entender o seu código, saber quem ta chamando quem… imagine se você tiver duas classes diferentes e cada classe tiver um método estático com o mesmo nome. Quando você fizer as importações estáticas desses métodos, como saberá que método está chamando?

Outra coisa, se entendi bem, o que você está tentando fazer é simplesmente inserir um botão em um JPanel, então o código que você ta fazendo, poderia ser feito facilmente da seguinte maneira:

JFrame frame = new JFrame();
JPanel panel = new JPanel();
JButton button = new JButton("Adicionar");

frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
frame.setSize(300, 300);

panel.setSize(300, 300);
panel.add(button);

frame.getContentPane().add(panel);
frame.setVisible(true);

Se não for isso, desculpe-me, mas foi o que entendi. Porém se for, estude um pouco mais sobre os gerenciadores de layout e ai entenderá por que eu usei um JFrame e depois um JPanel.

Outra coisa que esqueci de comentar é que, não vi uma instância de JFrame no seu código… sem o JFrame a janela não aparecerá na sua tela…

;D

W

Ao invés de eu usar o JFrame eu usei um JtabbedPane e depois um Jpanel, eu sei q o código esta um pouco ruim, pois o netbeans q gera sozinho e não tenho muita pratica no netbeans.

Bom vou postar o código mais completo aqui em baixo para um maior entendimento, o botão que eu estou tentando inserir se chama “btnSalvarComposicao” e o Jpanel que eu tento inserir o mesmo se chama “pComposicao”.

Segue o código:

javax.swing.GroupLayout pComposicaoLayout = new javax.swing.GroupLayout(pComposicao);
        pComposicao.setLayout(pComposicaoLayout);
        pComposicaoLayout.setHorizontalGroup(
            pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pComposicaoLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pComposicaoLayout.createSequentialGroup()
                        .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addGroup(pComposicaoLayout.createSequentialGroup()
                                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(lbCompProdDesc, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(lbCompProdCod, javax.swing.GroupLayout.DEFAULT_SIZE, 105, Short.MAX_VALUE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(tfCompProdDesc, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(tfCompProdCod, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(pComposicaoLayout.createSequentialGroup()
                                .addComponent(lbCompProdQuant, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 53, Short.MAX_VALUE)
                                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(btnSalvarComposicao, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(tfCompProdQuant, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(tfCompProdUnidade, javax.swing.GroupLayout.PREFERRED_SIZE, 70, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(spComposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 630, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(lbComposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(ckComposto))
                .addContainerGap(330, javax.swing.GroupLayout.PREFERRED_SIZE))
        );
        pComposicaoLayout.setVerticalGroup(
            pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pComposicaoLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(lbComposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(ckComposto)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lbCompProdCod, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(tfCompProdCod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lbCompProdDesc, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(tfCompProdDesc, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pComposicaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(tfCompProdQuant, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(lbCompProdQuant, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(tfCompProdUnidade, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addComponent(btnSalvarComposicao)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 32, Short.MAX_VALUE)
                .addComponent(spComposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 308, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );

        btnSalvarComposicao.getAccessibleContext().setAccessibleParent(null);

        abas.addTab("Composição", pComposicao);
        pComposicao.getAccessibleContext().setAccessibleParent(null);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(btnSalvar)
                .addGap(18, 18, 18)
                .addComponent(btnConsultar)
                .addGap(18, 18, 18)
                .addComponent(btnLimpar)
                .addContainerGap(676, Short.MAX_VALUE))
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(abas, javax.swing.GroupLayout.PREFERRED_SIZE, 975, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(588, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(btnSalvar)
                    .addComponent(btnConsultar)
                    .addComponent(btnLimpar))
                .addContainerGap())
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(abas, javax.swing.GroupLayout.PREFERRED_SIZE, 558, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(53, Short.MAX_VALUE)))
        );
    }// </editor-fold>
dyeimys
c
W

Olá pessoal,

consegui resolver o problema aqui.

Grato pela ajuda.

Criado 25 de julho de 2011
Ultima resposta 26 de jul. de 2011
Respostas 6
Participantes 3