Pergunta

No modelo de Java Desktop Application usado por Netbeans, uma barra de menu é criado com JMenuBar e JMenuItems.

Como posso obter essa barra apresentada na parte superior, onde as barras de menus são exibidos em MacOSX, em vez de in-janela, como no Windows?

Foi útil?

Solução

Nota: Esta é uma informação desatualizada - é necessária uma resposta mais recente

.

aplicações Java parecido com aplicações java tradicionais, mesmo sob OS X.

Se você quiser um look and feel nativo, existem alguns ajustes que você tem que fazer. Esta série de artigos descreve-los.

http://www.oracle.com/technetwork/articles /javase/javatomac-140486.html http://www.oracle.com/technetwork/java/javatomac2-138389. html

Isto inclui definir o ícone do Dock e texto, e integração com o menu Aplicativos.

Eu acredito que o OS X "jar envoltório como uma aplicação" utilidade com o Xcode define todas estas propriedades automaticamente.

Outras dicas

Ao adicionar algo como isso em seu código:

if (System.getProperty("os.name").contains("Mac")) {
  System.setProperty("apple.laf.useScreenMenuBar", "true");
}

Eu tive o mesmo problema, mas eu percebi que o MenuBar precisa ser adicionado ao quadro como:

frame.setJMenuBar (menuBar);

em vez de: frame.add (JMenuBar); , juntamente com: System.setProperty ( "apple.laf.useScreenMenuBar", "true"); no método principal.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top