Menu - executar rotina

Bom pessoal…

preciso de uma ajuda…

montei meu JMenuBar, e gostaria de fazer o seguinte.:
ja add vários menus a JMenuBar, mas gostaria q um desses menus funcionassem como um JMenuItem.
Executasse uma rotina, chamasse alguma tela…

Fiz um teste…, add um JMenuItem ao JMenuBar
mas tem um problema, se ele for o ultimo item na barra de menus, ele vai ocupa todo o resto da barra, como se o restante da barra fosse ele todo.

então, seria um Menu (MenuCadastro = new JMenu(“Cadastro”), com funções de um JMenuItem. Diretamente na barra de menus.

Tem como fazer isso? alguém sabe?

mas gostaria q um desses menus funcionassem como um JMenuItem.
Executasse uma rotina, chamasse alguma tela..

O que seria um JMenuBar que funcina igual a um JMenuItem? Não vejo muito sentido… não quis dizer JMenu funcionando como JMenuItem? Sendo um JMenu mesmo, o problema seria apenas chamar algum método? Se for é só usas o MouseListener, o ActionPerformed não é ativado quando se clica num JMenuBar

É cara…, desculpe, eu escrevi errado mesmo.
seria mesmo um JMenu funcionando como JMenuItem.

desculpe…
mas ñ estou conseguindo utilizar o MouseListener.

como faço.??

Criei uma ação. Ex:

Action acao = new AbstractAction( { public voic actionPerformed(ActionEvent event() { }} );

E então adicione essa ação no método set chamado setAction do JMenuItem.

Simples! :smiley:

Vai ser algo como:

jMenu.addMouseListener(new MouseListener(){
    public void mouseClicked(MouseEvent e) {
       saySomething("Mouse clicked (# of clicks: "
                    + e.getClickCount() + ")", e);
    }
});

Dá uma estudada no MouseListener. Primeiro resultado do Gopgle:
http://java.sun.com/docs/books/tutorial/uiswing/events/mouselistener.html