jjonas
Janeiro 11, 2007, 1:26pm
#1
A janela aparece limpa, e os componentes GUI não sao exibidos, tinha um codigo semelhante e funcionava…
[color=#444444][/color]import javax.swing.;
import java.awt. ;
import java.awt.event.*;
public class Janela extends JFrame{
private JCheckBox check1,check2;
private JTextField field1,field2;
private JButton button1,button2,button3;
private JPanel panel,panel1,panel2,panel3;
public Janela()
{
setTitle(“Janela”);
panel=new JPanel();
panel1=new JPanel();
panel2=new JPanel();
panel3=new JPanel();
check1=new JCheckBox(“Snap To Grid”);
check2=new JCheckBox(“Show To Grid”);
panel1.setLayout(new GridLayout(2,1));
panel1.add(check1);
panel1.add(check2);
field1=new JTextField(“8”,5);
field2=new JTextField(“8”,5);
panel2.setLayout(new GridLayout(2,1));
panel2.add(field1);
panel2.add(field2);
button1=new JButton(“OK”);
button2= new JButton(“CANCELAR”);
button3=new JButton(“HELP”);
panel3.setLayout(new GridLayout(3,1));
panel3.add(button1);
panel3.add(button2);
panel3.add(button3);
panel1.setLayout(new BorderLayout());
panel.add(panel1,BorderLayout.WEST);
panel.add(panel2,BorderLayout.CENTER);
panel.add(panel3,BorderLayout.EAST);
setSize(800,300);
setVisible(true);
}
public static void main(String []args)
{
Janela aplicacao=new Janela();
aplicacao.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
depois do setVisible adicione as seguintes linhas:
add(panel);
pack();
Entendeu, você deve adicionar os Panel’s ao Frame!!
Vc esqueceu de adicionar o Jpanel no Jframe:
getContentPane().add(panel);
Valew
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Janela extends JFrame{
private JCheckBox check1,check2;
private JTextField field1,field2;
private JButton button1,button2,button3;
private JPanel panel,panel1,panel2,panel3;
private JDesktopPane desk = new JDesktopPane();
public Janela()
{
getContentPane().add(desk);
setTitle("Janela");
panel=new JPanel();
panel1=new JPanel();
panel2=new JPanel();
panel3=new JPanel();
check1=new JCheckBox("Snap To Grid");
check2=new JCheckBox("Show To Grid");
panel1.setLayout(new GridLayout(2,1));
panel1.add(check1);
panel1.add(check2);
field1=new JTextField("8",5);
field2=new JTextField("8",5);
panel2.setLayout(new GridLayout(2,1));
panel2.add(field1);
panel2.add(field2);
button1=new JButton("OK");
button2= new JButton("CANCELAR");
button3=new JButton("HELP");
panel3.setLayout(new GridLayout(3,1));
panel3.add(button1);
panel3.add(button2);
panel3.add(button3);
panel1.setLayout(new BorderLayout());
panel.add(panel1,BorderLayout.WEST);
panel.add(panel2,BorderLayout.CENTER);
panel.add(panel3,BorderLayout.EAST);
setSize(800,300);
setVisible(true);
}
public static void main(String []args)
{
Janela aplicacao=new Janela();
aplicacao.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
adicione uma desktop tambem…
e faiz o que os cara falaram ai tbm…
adiciona seus componentes nessa desktop q eu coloquei ai …
vai fika legal!
desk.add(SEU COMPONENTE);
falow
Aqui de primeira funcionou, mas não apareceu nenhum componente que vc tinha adicionado, porém eu vi isso tava acontecendo pq vc não tinha adicionado os mesmos no palco do JFrame. Agora tá funcionando como esperado!!
[code]import javax.swing.;
import java.awt. ;
import java.awt.event.*;
public class Janela extends JFrame{
private JCheckBox check1,check2;
private JTextField field1,field2;
private JButton button1,button2,button3;
private JPanel panel,panel1,panel2,panel3;
public Janela(){
setTitle("Janela");
panel=new JPanel();
panel1=new JPanel();
panel2=new JPanel();
panel3=new JPanel();
check1=new JCheckBox("Snap To Grid");
check2=new JCheckBox("Show To Grid");
panel1.setLayout(new GridLayout(2,1));
panel1.add(check1);
panel1.add(check2);
field1=new JTextField("8",5);
field2=new JTextField("8",5);
panel2.setLayout(new GridLayout(2,1));
panel2.add(field1);
panel2.add(field2);
button1=new JButton("OK");
button2= new JButton("CANCELAR");
button3=new JButton("HELP");
panel3.setLayout(new GridLayout(3,1));
panel3.add(button1);
panel3.add(button2);
panel3.add(button3);
panel.setLayout(new BorderLayout());
panel.add(panel1,BorderLayout.WEST);
panel.add(panel2,BorderLayout.CENTER);
panel.add(panel3,BorderLayout.EAST);
/*Vc tem que colocar todos os componentes no palco do frame
* e não no palco do panel!!
* */
getContentPane().add(panel);
setSize(800,300);
setVisible(true);
}
public static void main(String []args){
Janela aplicacao=new Janela();
aplicacao.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
} [/code]
Espere ter ajudado!!
Flw aew e t+!!