Alguém poderia me ajudar a criar um menu usando o java swing? Gostaria de um menu simles, com algumas opções do tipo, arquivo, editar, etc… Comecei a programar em java a pouco tempo e no material q peguei não há referencia para este tipo de componente. A indicação de um material ou até mesmo o pedaço de um código com a criação de um menu seria perfeito. Obrigado!
seria algo assim, para um JFrame
//barra do menu
JMenuBar menuBar = new JMenuBar();
//novo Menu
JMenu menuFile = new JMenu("File");
//item do menu
JMenuItem menuItem = new JMenuItem("Exit");
menuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("fechando");
System.exit(0);
}
});
menuFile.add(menuItem);
menuBar.add(menuFile);
super.setJMenuBar(menuBar);
A criação de JMenuBar é bem simples, idependente da sua IDE, já que isto é possível até em bloco de notas, segue um exemplo para criação:
[code] import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.WindowConstants;
public class principal extends JFrame{
private JMenuBar BarraMenu = null;
private JMenu mnuArquivo = null;
private JMenuItem mnuSair = null;
public principal() {
super();
// TODO Auto-generated constructor stub
initialize();
}
private void initialize(){
this.setTitle("Aplicação com menu");
this.setJMenuBar(getBarraMenu());
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setSize(800,600);
this.setVisible(true);
}
private JMenuBar getBarraMenu() {
if (BarraMenu == null){
BarraMenu = new JMenuBar();
BarraMenu.add(getMnuArquivo());
}
return BarraMenu;
}
private JMenu getMnuArquivo() {
if (mnuArquivo == null){
mnuArquivo = new JMenu();
mnuArquivo.setText("Arquivo");
mnuArquivo.add(getMnuSair());
}
return mnuArquivo;
}
private JMenuItem getMnuSair() {
if (mnuSair == null){
mnuSair = new JMenuItem();
mnuSair.setText("Sair");
}
return mnuSair;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new principal();
}
}
[/code]
Valew pela ajuda galera! Consegui criar o menu sem problemas! Abraço!
Tem como usar esse exemplo que vc deu, de modo q o actionPerformed dele, dispare um Jpanel embaixo? estou tendo mt dificuldade para conseguir criar uma simples tela com Jmenu e um Jpanel embaixo.
Tem sim…
Caso queira usar JPanels e so adicionar os panels no layout e dentro do metodo actionPerformed utilizar o comando panel.setVisible(true); onde panel e o nome do seu painel.
Pelo que estou percebendo, o que vc quer fazer seria melhor utilizando a classe JInternalFrame. de uma olhada aqui no forum que tem muita coisa sobre essa classe.
abraco
hummm…talvez seja melhor mesmo, vou dar uma estudada no internal