Boa Noite pessoal!
Estou com um problema, não consigo entender o que esta dano errado com o JTabbedPanel
quando eu copilo o código as guias aparece uma em cima da outra.
Sera que só pode usar JTabbedPanel no JFrame sem colocar em um JPanel e nao ter mais nenhum JPanel dentro do JFrame?
[color=red]
obs: a janela não esta toda pronta tirei os botões para não deixa codigo fonte grande de mais para ler.[/color]
O codigo fonte da tela esta embaixo o metodo que eu uso para criar um JTabbedPanel é montarPainelAbas().
[code]package br.com.devmedia.completeswingapp.frames;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Frame;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.WindowConstants;
public class TesteJTabbedPanel extends JDialog{
public TesteJTabbedPanel(Frame parent, boolean modal){
super(parent, modal);
criarPainelAnimal();
}
public void criarPainelAnimal(){
JPanel painelAnimal= new JPanel();
painelAnimal.setLayout(new FlowLayout());
painelAnimal.add(criarMenuBotoes());
painelAnimal.add(montarPainelAbas());
setTitle("Animal of System");
setSize(455, 425);
add(painelAnimal);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
public JPanel criarMenuBotoes(){
JPanel painelPrincipal = new JPanel();
painelPrincipal.setLayout(new BorderLayout());
painelPrincipal.setBorder(new javax.swing.border.EtchedBorder());
painelPrincipal.setPreferredSize(new Dimension(400,70));
return painelPrincipal;
}
public JTabbedPane montarPainelAbas(){
JTabbedPane tabbedPane = new JTabbedPane();
JPanel panelAba1 = new JPanel();
panelAba1.setLayout(new FlowLayout());
tabbedPane.setSize(new Dimension(100,100));
JPanel panelAba2 = new JPanel();
tabbedPane.addTab("Tab 1", panelAba1);
tabbedPane.addTab("Tab 2", panelAba2);
return tabbedPane;
}
public static void main(String[] args){
JFrame frame = new JFrame();
TesteJTabbedPanel teste = new TesteJTabbedPanel(frame, true);
teste.setVisible(true);
}
}
[/code]