Galera, boa noite.
Sou iniciante em Java, sei que tenho um longo caminho a percorrer até chegar ao nível de muitos aqui, mas com fé, força de vontade, muito estudo e ajuda dos amigos vou chegar lá.
Meu problema é o seguinte:
Criei uma classe gera um Jpanel com duas abas, depois criei uma outra classe para gerar um Jframe de teste. Nessa segunda classe tem um menu e ao clicar em um sub item desse menu, deveria abrir na tela o JPanel com as duas abas. Gera apenas um JPanel em branco.
Já revirei o google de cabeça para baixa e não encontrei nada desse tipo. Encontro apenas tutoriais explicando como fazer isso separadamente.
Se alguem puder me ajudar e agradeço e espero em breve poder retribuir o favor ajudando, a outros novatos.
Vou postar o código que montei, assim acho que fica mais fácil o entendimento de vocês.
Primeira Classe.
public class NewAbas extends JPanel{
private JTabbedPane abas;
public NewAbas(){
abas = new JTabbedPane();
JPanel jp = new JPanel(new GridLayout(2,2));
jp.add(new JButton("Léxico"));
jp.add(new JTextField("JTextField parrudo"));
abas.addTab("Léxico", jp );
jp = new JPanel(new GridLayout(2,2));
jp.add(new JButton("Código"));
jp.add(new JTextField("Código"));
abas.addTab("Aba2",jp);
}
}
Segunda Classe:
public class TestaAbas extends JFrame {
JDesktopPane desktop;
public static void main(String[] args) {
TestaAbas m = new TestaAbas();
m.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
m.setSize(700, 550);
m.setLocationRelativeTo(null);
m.setVisible(true);
}
public TestaAbas() {
super("Programa de Compiladores");
JMenuBar menuBar = new JMenuBar();
JMenu menuCadastrar = new JMenu("Cadastro ");
JMenuItem menuCadFuncionario = new JMenuItem("Analise");
menuCadastrar.add(menuCadFuncionario);
menuBar.add(menuCadastrar);
setJMenuBar(menuBar);
desktop = new JDesktopPane();
desktop.setBackground(Color.black);
add(desktop);
menuCadFuncionario.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
NewAbas TCP = new NewAbas();
desktop.add(TCP);
TCP.setSize(690, 490);
TCP.setVisible(true);
}
}
);
}
}
Desde já agradeço a todos.