Estou com dificuldades pra montar a minha tela de cadastros, dentro de uma aba JTabbedPane. Criei uma nova classe que quero montar as telas separadas.
Segue o código da Classe Principal:
import javax.swing.*;
public class Main extends JFrame {
//OBJETO MENU PARA MENU PRINCIPAL
JMenuBar barraMenuPrincipal = new JMenuBar();
JMenu cadastroPropriedades = new JMenu("Propriedades");
JMenu cadastroBasico = new JMenu("Cadastros");
JMenu cadastroNegocios = new JMenu("Negócios");
JMenu cadastroFinanceiro = new JMenu("Financeiro");
JTabbedPane abas = new JTabbedPane();
JPanel painelCadastros = new JPanel();
JPanel painelNegocios = new JPanel();
JPanel painelFinanceiro = new JPanel();
JPanel painelPropriedades = new JPanel();
//CONSTRUTOR
public Main() {
super("Aplicativo para Comércio");
setSize(800, 600);
setDefaultCloseOperation(EXIT_ON_CLOSE);
//MONTA MENU PRINCIPAL
this.montaMenu();
}
//CLASSE PRINCIPAL
public static void main(String[] args) {
Main framePrincipal = new Main();
framePrincipal.setVisible(true);
TelaCadastros cadastros = new TelaCadastros();
painelCadastros.add(cadastros);
}
//MÉTODO QUE MONTA UMA JANELA PRINCIPAL
private void montaMenu() {
//*****COMPONENTES DO MENU PRINCIPAL*****
//COMPONENTES DE PROPRIEDADES
JMenuItem ajuda = new JMenuItem("Ajuda");
JMenuItem sair = new JMenuItem("Sair");
//COMPONENTES DE CADASTROS
JMenuItem cidades = new JMenuItem("Cidades");
JMenuItem pessoas = new JMenuItem("Pessoas");
JMenuItem produtos = new JMenuItem("Produtos");
//COMPONENTES DE NEGÓCIOS
JMenuItem aluguel = new JMenuItem("Aluguel");
JMenuItem compras = new JMenuItem("Compras");
JMenuItem pedidos = new JMenuItem("Pedidos");
JMenuItem vendaRapida = new JMenuItem("Venda Rapida");
JMenuItem comandas = new JMenuItem("Comandas");
JMenuItem estoque = new JMenuItem("Estoque");
//COMPONENTES DE FINANCEIRO
JMenuItem financeiro = new JMenuItem("Financeiro");
JMenuItem notaSaida = new JMenuItem("Notas de Saída");
JMenuItem notaEntrada = new JMenuItem("Notas de Entrada");
//MONTA MENU PRINCIPAL
//MENU CADASTROS
this.cadastroBasico.add(cidades);
this.cadastroBasico.add(pessoas);
this.cadastroBasico.add(produtos);
//MENU NEGÓCIOS
this.cadastroNegocios.add(aluguel);
this.cadastroNegocios.add(compras);
this.cadastroNegocios.add(pedidos);
this.cadastroNegocios.add(vendaRapida);
this.cadastroNegocios.add(comandas);
this.cadastroNegocios.add(estoque);
//MENU FINANCEIRO
this.cadastroFinanceiro.add(financeiro);
this.cadastroFinanceiro.add(notaSaida);
this.cadastroFinanceiro.add(notaEntrada);
//MENU PROPRIEDADES
this.cadastroPropriedades.add(ajuda);
this.cadastroPropriedades.add(sair);
//BARRA DE MENU PRINCIPAL
this.barraMenuPrincipal.add(cadastroBasico);
this.barraMenuPrincipal.add(cadastroNegocios);
this.barraMenuPrincipal.add(cadastroFinanceiro);
this.barraMenuPrincipal.add(cadastroPropriedades);
this.setJMenuBar(barraMenuPrincipal);
abas.add(painelCadastros,"Cadastros");
abas.add(painelNegocios,"Negócios");
abas.add(painelFinanceiro,"Financeiro");
abas.add(painelPropriedades,"Propriedades");
getContentPane().add(abas);
}
}
E a classe Tela Cadastros:
import javax.swing.*;
public class TelaCadastros extends JFrame{
public TelaCadastros(){
//BARRA DE MENU DE CADASTROS
JMenuBar barraMenuCadastros = new JMenuBar();
Icon iconeEstados = new ImageIcon(getClass().getResource("estados.png"));
JMenu estados = new JMenu("Estados");
barraMenuCadastros.add(estados);
this.add(barraMenuCadastros);
}
}
painelCadastros.add(cadastros);
O que posso fazer pra corrigir isso? Esse é um jeito correto de se criar as telas? Cada uma em uma classe diferente?
Como fazê-lo? Desde já agradeço!