Como adicionar um menu com alguns sub itens?
Obs.: Sou iniciante dos iniciante.
package view;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JMenu;
public class login {
public static void main(String[] args) {
JFrame janela = new JFrame("Meu primeiro frame em Java");
janela.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
janela.setSize(600,400); //DEFINE TAMANHO DA JANELA
janela.setVisible(true); //TONARA JANELA VISIVEL
janela.setResizable(false); //NAO PERMITE MAXIMIZAR
JPanel meuPainel = new JPanel();
janela.add(meuPainel);
JButton bt = new JButton("PPHO");
meuPainel.add(bt);
bt.setBounds(10, 10, 10, 30);
JMenuBar barra = new JMenuBar();
barra.setVisible(true);
meuPainel.add(barra);
}
Não sei por quais motivos vc quer fazer no braço ao invés de desenhar a interface com uma ferramenta, mas enfim, mesmo assim, minha sugestão seria usar algo que gere isso, não pra fazer, mas só pra ver o código gerado. Vai la no Netbeans, arrasta um menu, um item, ai ve o código que gerou.
Universidade, disciplina de Linguagem de Programação em Java requer no braço, exatamente por este motivo é necessário aprender e não utilizar uma ferramenta como o Netbeans utilizando RAD. A questão é não ser dependente.
package view;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JMenu;
public class login {
public static void main(String[] args) {
JFrame janela = new JFrame("Meu primeiro frame em Java");
janela.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
janela.setSize(600,400); //DEFINE TAMANHO DA JANELA
janela.setVisible(true); //TONARA JANELA VISIVEL
janela.setResizable(false); //NAO PERMITE MAXIMIZAR
JPanel meuPainel = new JPanel();
janela.add(meuPainel);
JButton bt = new JButton("PPHO");
meuPainel.add(bt);
bt.setBounds(10, 10, 10, 30);
//criando a barra de menu
JMenuBar barraMenuPrincipal = new JMenuBar();
janela.add(barraMenuPrincipal);
//Criando menu que vai aparecer na barra de menu
JMenu mArquivo = new JMenu("Cadastro");
barraMenuPrincipal.add(mArquivo);
//Criando menu que vai aparecer na barra de menu
JMenu Arquivo = new JMenu("Arquivo");
barraMenuPrincipal.add(Arquivo);
//Criando item de menu para um menu de primeiro nível
JMenuItem miSair = new JMenuItem("Sair");
mArquivo.add(miSair);
JMenu mNovo = new JMenu("Novo");
barraMenuPrincipal.add(mNovo);
JMenuItem miArquivo = new JMenuItem("Arquivo");
mNovo.add(miArquivo);
JMenu mAbrir = new JMenu("Abrir");
barraMenuPrincipal.add(mAbrir);
JMenu smArquivo = new JMenu("Arquivo");
mAbrir.add(smArquivo);
JMenuItem smiEmBranco = new JMenuItem("Em Branco");
JMenu smiDeTemplate = new JMenu("De Template");
smArquivo.add(smiEmBranco);
smArquivo.add(smiDeTemplate);
JMenuItem ssmiTemplate01 = new JMenuItem("Template 01");
JMenuItem ssmiTemplate02 = new JMenuItem("Template 02");
smiDeTemplate.add(ssmiTemplate01);
smiDeTemplate.add(ssmiTemplate02);
janela.setJMenuBar(barraMenuPrincipal);
janela.setVisible(true);
}
Comentando que eu fico muito chateado o termo certo seria puto da cara com esse lance de “ain sou iniciante dos iniciante”, parceiro, se você já tá usando Frames e Swing, te garanto que comparado com um iniciante de verdade, você não é iniciante.
Um iniciante não sabe usar um for. Um if. Ele tá aprendendo. Ele tá iniciando. Fala que mexe a pouco tempo com a tecnologia em questão (Frames e afins), mas VOCÊ NÃO É INICIANTE.
Nesse caso até concordo que possa faltar algumas noções pra você, mas isso não faz de você iniciante. Talvez iniciante em Jframes e afins, mas o que eu quero dizer é que tem cara que vem aqui usando conceitos avançados dizendo ser iniciante. Cara, como isso irrita!
Isso tudo me parece muito mais uma desculpa para conseguir o código pronto, e eu não to nem falando desse post específico, to falando de todos que vem e postam “ain sou iniciante me ajuda”.
Só por que você está iniciando o estudo de Frame agora não significa que você seja iniciante na tecnologia. Quando alguém no GUJ posta dizendo que é iniciante, não é preciso ser vidente pra interpretar que ele é novo na linguagem Java, ou até com programação.
Se é iniciante em determinado componente ou tecnologia (como Jframe), especifique isso.
Do contrário, o certo é considerar que você sabe apenas o básico, como declaração de variáveis, if e else e etc. E pelo que você está fazendo, dá pra ver que seu conhecimento não é de iniciante.
Penso da seguinte forma, se eu não sei algo, como no caso, não sabia adicionar o menu, eu sou um principiante e até mesmo futuramente, quando o nível for aumentando, terei novas dificuldades e isso querer uma nova iniciação, uma nova iniciativa, portanto, sou iniciante nesse momento, é algo subjetivo.
E a respeito do que havia comentando sobre querer o código. Penso que por se tratar de um fórum, quando a questão requer o código é só solicitar e além disso, caso não obtenha o código, é só indicar a pessoa que fez o post um link para que faça uma pesquisa por conta própria(dar um norte).