Buscar

JMenuBar e JMenu em Java

Prévia do material em texto

Aula 08 JMenuBar / JMenu
JMenuBar
JMenuBar pode conter vários JMenu. Cada um dos do JMenu pode conter uma série de JMenuItem que você pode selecionar.
A classe JMenuBar é usada como conteiner para objetos da classe JMenu, que são menus contendo itens que permitem acesso às funcionalidades da aplicação.
 
O método setJMenuBar() é usado para adicionar a barra de menus à uma JFrame.
JMenu
Menus são geralmente dispostos na horizontal em uma fileira. Geralmente uma barra de menus é disposta no topo de um frame.
JMenuItem
São os itens (opções) contidos dentro de cada opção no menu principal (Menu).
JSeparator
JSeparator é uma classe que adiciona uma linha extra entre os itens do menu. Esta linha, apenas separa os itens do menu.
Exemplo 1:
package programas;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
public class ExemploMenu1 extends JFrame {
 JMenuBar menuBar;
 JMenu menuArquivo;
 JMenu menuCliente;
 JMenu menuFornecedor;
 JMenu menuVendedor;
 public ExemploMenu1() {
 super("Exemplo Menu");
 setSize(300,200);
 setVisible(true);
 //setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 public void montaMenu() {
 menuBar = new JMenuBar();
 setJMenuBar(menuBar);
 menuArquivo = new JMenu("Arquivo");
 menuCliente = new JMenu("Cliente");
 menuFornecedor = new JMenu("Fornecedor");
 menuVendedor = new JMenu("Vendedor");
 menuBar.add(menuArquivo);
 menuBar.add(menuCliente);
 menuBar.add(menuFornecedor);
 menuBar.add(menuVendedor);
 }
 public static void main(String[] args) {
 ExemploMenu1 exemplo = new ExemploMenu1();
 exemplo.montaMenu();
 }
}
Exemplo 2:
package programas;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class ExemploMenu2 extends JFrame {
 public JMenuBar menuBar;
 public JMenu menuArquivo;
 public JMenu menuCliente;
 public JMenu menuFornecedor;
 public JMenu menuVendedor;
 public JMenu menuSair;
 public JMenuItem jmiSair;
 private JButton btnBotao1, btnBotao2, btnBotao3, btnBotao4;
 public ExemploMenu2() {
 super("Exemplo Menu");
 setVisible(true);
 // setSize(800,300);
 setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 public void montaMenu() {
 Container bt = getContentPane();
 setLayout(null);
 menuBar = new JMenuBar();
 setJMenuBar(menuBar);
 menuArquivo = new JMenu("Arquivo");
 menuCliente = new JMenu("Cliente");
 menuFornecedor = new JMenu("Fornecedor");
 menuVendedor = new JMenu("Vendedor");
 btnBotao1 = new JButton("Botao1");
 btnBotao1.setBounds(300, 560, 150, 25);
 btnBotao2 = new JButton("Botao2");
 btnBotao2.setBounds(520, 560, 150, 25);
 btnBotao3 = new JButton("Botao3");
 btnBotao3.setBounds(760, 560, 150, 25);
 btnBotao4 = new JButton("Sair");
 btnBotao4.setBounds(1000, 560, 150, 25);
 bt.add(btnBotao1);
 bt.add(btnBotao2);
 bt.add(btnBotao3);
 bt.add(btnBotao4);
 menuBar.add(menuArquivo);
 menuBar.add(menuCliente);
 menuBar.add(menuFornecedor);
 menuBar.add(menuVendedor);
 btnBotao4.addActionListener(new Sair());
 }
 public class Sair implements ActionListener {
 @Override
 public void actionPerformed(ActionEvent e) {
 System.exit(0);
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 }
 public static void main(String[] args) {
 ExemploMenu2 exemplo = new ExemploMenu2();
 exemplo.montaMenu();
 }
}
Exemplo 3:
package programas;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JSeparator;
public class ExemploMenuItem1 extends JFrame {
 JMenuBar menuBar;
 JMenu menuCliente;
 JMenuItem menuItemClienteIncluir;
 JMenuItem menuItemClienteAlterar;
 JMenuItem menuItemClienteConsultar;
 JMenuItem menuItemClienteExcluir;
 JMenuItem menuItemClienteRelatorio;
 JMenuItem menuItemClienteSair;
 JSeparator separador;
 ExemploMenuItem1() {
 super("MenuItem Exemplo");
 setVisible(true);
 setSize(400,200);
 // setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 public void montaMenu() {
 menuBar = new JMenuBar();
 setJMenuBar(menuBar);
 
 separador = new JSeparator();
 menuCliente = new JMenu("Cliente");
 menuItemClienteIncluir = new JMenuItem("Incluir");
 menuItemClienteAlterar = new JMenuItem("Alterar");
 menuItemClienteConsultar = new JMenuItem("Consultar");
 menuItemClienteExcluir = new JMenuItem("Excluir");
 menuItemClienteRelatorio = new JMenuItem("Relatorio");
 menuItemClienteSair = new JMenuItem("Sair");
 menuBar.add(menuCliente);
 menuCliente.add(menuItemClienteIncluir);
 menuCliente.add(menuItemClienteAlterar);
 menuCliente.add(menuItemClienteConsultar);
 menuCliente.add(menuItemClienteExcluir);
 menuCliente.add(menuItemClienteRelatorio);
 menuCliente.add(separador);
 menuCliente.add(menuItemClienteSair);
 }
 public static void main(String[] args) {
 ExemploMenuItem1 exemplo = new ExemploMenuItem1();
 exemplo.montaMenu();
 }
}
Exemplo 4:
package programas;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JSeparator;
public class ExemploMenuItem2 extends JFrame {
 JMenuBar menuBar;
 JMenu menuCliente;
 JMenuItem menuItemClienteIncluir;
 JMenuItem menuItemClienteAlterar;
 JMenuItem menuItemClienteConsultar;
 JMenuItem menuItemClienteExcluir;
 JMenuItem menuItemClienteRelatorio;
 JMenuItem menuSubItemClienteRelatorio1;
 JMenuItem menuSubItemClienteRelatorio2;
 JMenuItem menuSubItemClienteRelatorio3;
 JMenuItem menuSubItemClienteRelatorio4;
 JMenuItem menuSubItemClienteRelatorio5;
 JMenuItem menuSubItemClienteRelatorio6;
 JMenuItem menuItemClienteSair;
 JSeparator separador;
 ExemploMenuItem2() {
 super("MenuItem Exemplo");
 setVisible(true);
 setSize(400,300);
 // setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 public void montaMenu() {
 menuBar = new JMenuBar();
 setJMenuBar(menuBar);
 separador = new JSeparator();
 menuCliente = new JMenu("Cliente");
 menuItemClienteIncluir = new JMenuItem("Incluir");
 menuItemClienteAlterar = new JMenuItem("Alterar");
 menuItemClienteConsultar = new JMenuItem("Consultar");
 menuItemClienteExcluir = new JMenuItem("Excluir");
 menuItemClienteRelatorio = new JMenu("Relatorio");menuItemClienteSair = new JMenuItem("Sair");
 menuSubItemClienteRelatorio1 = new JMenuItem("Vendas do dia");
 menuSubItemClienteRelatorio2 = new JMenuItem("Vendas do mês");
 menuSubItemClienteRelatorio3 = new JMenuItem("Duplicatas em Atraso (30 dias)");
 menuSubItemClienteRelatorio4 = new JMenuItem("Duplicatas em Atraso (60 dias)");
 menuSubItemClienteRelatorio5 = new JMenuItem("Duplicatas em Atraso (Mais de 60 dias)");
 menuSubItemClienteRelatorio6 = new JMenuItem("Cadastro de Clientes");
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio1);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio2);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio3);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio4);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio5);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio6);
 
 menuBar.add(menuCliente);
 menuCliente.add(menuItemClienteIncluir);
 menuCliente.add(menuItemClienteAlterar);
 menuCliente.add(menuItemClienteConsultar);
 menuCliente.add(menuItemClienteExcluir);
 menuCliente.add(menuItemClienteRelatorio);
 menuCliente.add(separador);
 menuCliente.add(menuItemClienteSair);
 }
 public static void main(String[] args) {
 ExemploMenuItem2 exemplo = new ExemploMenuItem2();
 exemplo.montaMenu();
 }
}
Exemplo5:
package programas;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JSeparator;
public class ExemploMenuItem3 extends JFrame {
 JMenuBar menuBar;
 JMenu menuCliente;
 JMenuItem menuItemClienteIncluir;
 JMenuItem menuItemClienteAlterar;
 JMenuItem menuItemClienteConsultar;
 JMenuItem menuItemClienteExcluir;
 JMenuItem menuItemClienteRelatorio;
 JMenuItem menuSubItemClienteRelatorio1;
 JMenuItem menuSubItemClienteRelatorio2;
 JMenuItem menuSubItemClienteRelatorio3;
 JMenuItem menuSubItemClienteRelatorio4;
 JMenuItem menuSubItemClienteRelatorio5;
 JMenuItem menuSubItemClienteRelatorio6;
 JMenuItem menuSubItemClienteRelatorio6a;
 JMenuItem menuSubItemClienteRelatorio6b;
 JMenuItem menuItemClienteSair;
 JSeparator separador;
 ExemploMenuItem3() {
 super("MenuItem Exemplo");
 setVisible(true);
 setSize(500,300);
 // setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 public void montaMenu() {
 menuBar = new JMenuBar();
 setJMenuBar(menuBar);
 separador = new JSeparator();
 menuCliente = new JMenu("Cliente");
 menuItemClienteIncluir = new JMenuItem("Incluir");
 menuItemClienteAlterar = new JMenuItem("Alterar");
 menuItemClienteConsultar = new JMenuItem("Consultar");
 menuItemClienteExcluir = new JMenuItem("Excluir");
 menuItemClienteRelatorio = new JMenu("Relatorio");
 menuItemClienteSair = new JMenuItem("Sair");
 menuSubItemClienteRelatorio1 = new JMenuItem("Vendas do dia");
 menuSubItemClienteRelatorio2 = new JMenuItem("Vendas do mês");
 menuSubItemClienteRelatorio3 = new JMenuItem("Duplicatas em Atraso (30 dias)");
 menuSubItemClienteRelatorio4 = new JMenuItem("Duplicatas em Atraso (60 dias)");
 menuSubItemClienteRelatorio5 = new JMenuItem("Duplicatas em Atraso (Mais de 60 dias)");
 
 menuSubItemClienteRelatorio6 = new JMenu("Cadastro de Clientes");
 menuSubItemClienteRelatorio6a = new JMenuItem("Pessoa Física");
 menuSubItemClienteRelatorio6b = new JMenuItem("Pessoa Jurídica");
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio1);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio2);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio3);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio4);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio5);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio6);
 
 menuSubItemClienteRelatorio6.add(menuSubItemClienteRelatorio6a);
 menuSubItemClienteRelatorio6.add(menuSubItemClienteRelatorio6b);
 
 menuBar.add(menuCliente);
 menuCliente.add(menuItemClienteIncluir);
 menuCliente.add(menuItemClienteAlterar);
 menuCliente.add(menuItemClienteConsultar);
 menuCliente.add(menuItemClienteExcluir);
 menuCliente.add(menuItemClienteRelatorio);
 menuCliente.add(separador);
 menuCliente.add(menuItemClienteSair);
 }
 public static void main(String[] args) {
 ExemploMenuItem3 exemplo = new ExemploMenuItem3();
 exemplo.montaMenu();
 }
}
Exemplo 6:
package programas;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JSeparator;
public class ExemploMenuItemEvento extends JFrame {
 private JMenuBar menuBar;
 private JMenu menuCliente;
 private JMenuItem menuItemClienteIncluir;
 private JMenuItem menuItemClienteAlterar;
 private JMenuItem menuItemClienteConsultar;
 private JMenuItem menuItemClienteExcluir;
 private JMenuItem menuItemClienteRelatorio;
 private JMenuItem menuSubItemClienteRelatorio1;
 private JMenuItem menuSubItemClienteRelatorio2;
 private JMenuItem menuSubItemClienteRelatorio3;
 private JMenuItem menuSubItemClienteRelatorio4;
 private JMenuItem menuSubItemClienteRelatorio5;
 private JMenuItem menuSubItemClienteRelatorio6;
 private JMenuItem menuItemClienteSair;
 private JSeparator separador;
 private JButton btnBotao1, btnBotao2, btnBotao3, btnBotao4;
 ExemploMenuItemEvento() {
 super("MenuItem Exemplo");
 setVisible(true);
 setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 public void montaMenu() {
 Container bt = getContentPane();
 setLayout(null);
 menuBar = new JMenuBar();
 setJMenuBar(menuBar);
 btnBotao1 = new JButton("Botao1");
 btnBotao1.setBounds(300, 560, 150, 25);
 btnBotao2 = new JButton("Botao2");
 btnBotao2.setBounds(520, 560, 150, 25);
 btnBotao3 = new JButton("Botao3");
 btnBotao3.setBounds(760, 560, 150, 25);
 btnBotao4 = new JButton("Sair");
 btnBotao4.setBounds(1000, 560, 150, 25);
 bt.add(btnBotao1);
 bt.add(btnBotao2);
 bt.add(btnBotao3);
 bt.add(btnBotao4);
 separador = new JSeparator();
 menuCliente = new JMenu("Cliente");
 menuItemClienteIncluir = new JMenuItem("Incluir");
 menuItemClienteAlterar = new JMenuItem("Alterar");
 menuItemClienteConsultar = new JMenuItem("Consultar");
 menuItemClienteExcluir = new JMenuItem("Excluir");
 menuItemClienteRelatorio = new JMenu("Relatorio");
 menuItemClienteSair = new JMenuItem("Sair");
 menuSubItemClienteRelatorio1 = new JMenuItem("Vendas do dia");
 menuSubItemClienteRelatorio2 = new JMenuItem("Vendas do mês");
 menuSubItemClienteRelatorio3 = new JMenuItem("Duplicatas em Atraso (30dias)");
 menuSubItemClienteRelatorio4 = new JMenuItem("Duplicatas em Atraso (60 dias)");
 menuSubItemClienteRelatorio5 = new JMenuItem("Duplicatas em Atraso (Mais de 60 dias)");
 menuSubItemClienteRelatorio6 = new JMenuItem("Cadastro de Clientes");
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio1);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio2);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio3);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio4);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio5);
 menuItemClienteRelatorio.add(menuSubItemClienteRelatorio6);
 menuBar.add(menuCliente);
 menuCliente.add(menuItemClienteIncluir);
 menuCliente.add(menuItemClienteAlterar);
 menuCliente.add(menuItemClienteConsultar);
 menuCliente.add(menuItemClienteExcluir);
 menuCliente.add(menuItemClienteRelatorio);
 menuCliente.add(separador);
 menuCliente.add(menuItemClienteSair);
 menuItemClienteIncluir.addActionListener(new CadastroCliente());
 menuSubItemClienteRelatorio6.addActionListener(new RelatorioCliente());
 menuItemClienteSair.addActionListener(new Sair());
 btnBotao4.addActionListener(new Sair());
 }
 public class RelatorioCliente implements ActionListener {
 @Override
 public void actionPerformed(ActionEvent e) {
 RelatorioClientes rc = new RelatorioClientes();
 rc.gerarRelatorio();
 }
 }
 public class CadastroCliente implements ActionListener {
 @Override
 public void actionPerformed(ActionEvent e) {
 CadastrarCliente cd = new CadastrarCliente();
 cd.inserirDados();
 }
 }
 public class Sair implements ActionListener {
 @Override
 public void actionPerformed(ActionEvent e) {
 System.exit(0);
 setDefaultCloseOperation(EXIT_ON_CLOSE);
 }
 }
 public static void main(String[] args) {
 ExemploMenuItemEvento exemplo = new ExemploMenuItemEvento();
 exemplo.montaMenu();
 }
}
package programas;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JOptionPane;
public class CadastrarCliente extends JFrame {
 private JLabel lblTituloTela;
 private JLabel lblNome;
 private JLabel lblEndereco;
 private JLabel lblEstado;
 private JTextField txtNome;
 private JTextField txtEndereco;
 private JTextField txtEstado;
 private JButton btnGravar;
 private JButton btnSair;
 private JButton btnRetornar;
 public CadastrarCliente() {
 super("Cadastramento de Cliente");
 setVisible(true);
 setSize(500, 300);
 setLocationRelativeTo(null); // centraliza a janela na tela
 }
 public void inserirDados() {
 Container tela = getContentPane();
 tela.setLayout(null);
 lblTituloTela = new JLabel("Inclusão de Dados de Cliente");
 lblNome = new JLabel("Nome: ");
 lblEndereco = new JLabel("Endereço: ");
 lblEstado = new JLabel("Estado: ");
 txtNome = new JTextField();
 txtEndereco = new JTextField();
 txtEstado = new JTextField();
 btnRetornar = new JButton("Retornar");
 btnGravar = new JButton("Gravar");
 btnSair = new JButton("Sair");
 lblTituloTela.setBounds(200, 10, 200, 20);//coluna, linha, largura, altura
 lblNome.setBounds(50, 40, 60, 20);//coluna, linha, largura, altura
 lblEndereco.setBounds(50, 70, 60, 20);//coluna, linha, largura, altura
 lblEstado.setBounds(50, 100, 60, 20);//coluna, linha, largura, altura
 txtNome.setBounds(120, 40, 350, 25);//coluna, linha, largura, altura
 txtEndereco.setBounds(120, 70, 350, 25);//coluna, linha, largura, altura
 txtEstado.setBounds(120, 100, 200, 25);//coluna, linha, largura, altura
 btnRetornar.setBounds(80, 200, 100, 30);//coluna, linha, largura, altura
 btnGravar.setBounds(200, 200, 100, 30);//coluna, linha, largura, altura
 btnSair.setBounds(320, 200, 100, 30);//coluna, linha, largura, altura
 tela.add(lblTituloTela);
 tela.add(lblNome);
 tela.add(lblEndereco);
 tela.add(lblEstado);
 tela.add(txtNome);
 tela.add(txtEndereco);
 tela.add(txtEstado);
 tela.add(btnGravar);
 tela.add(btnSair);
 tela.add(btnRetornar);
 btnRetornar.addActionListener(new Retornar());
 btnGravar.addActionListener(new Gravar());
 btnSair.addActionListener(new Sair());
 }
 private class Gravar implements ActionListener {
 @Override
 public void actionPerformed(ActionEvent e) {
 JOptionPane.showMessageDialog(null,
 "Dados Gravados:\n"
 + "\nNome: " + txtNome.getText()
 + "\nEndereço: " + txtEndereco.getText()
 + "\nEstado: " + txtEstado.getText());
 }
 }
 private class Sair implements ActionListener {
 public void actionPerformed(ActionEvent e) {
 System.exit(0);
 }
 }
 private class Retornar implements ActionListener {
 public void actionPerformed(ActionEvent e) {
 setVisible(false);
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 }
}
Exemplo 7:
Exercícios:
1 – De acordo com os exemplos acima, implementar uma aplicação em Java Swing para a criação do menu e a chamada da aplicação que calcula o contracheque (trabalho feito em sala de aula).
2 – Fazer um programa em Java Swing com o seguinte menu: Arquivo com subitens (Abrir, Editar, Imprimir e Sair). 
3 – De acordo com a figura abaixo implemente uma aplicação em Java usando os recursos do Swing para formatar a tela abaixo. A opção escolhida deverá ser mostrada através de uma caixa de diálogo.
4 - Considere a figura abaixo e implemente uma aplicação em Java Swing para construir o menu e a tela de cadastramento de Aluno e Disciplina.
�PAGE \* MERGEFORMAT�17�

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes