栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Mac OS X上将JMenuBar移至屏幕菜单栏?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Mac OS X上将JMenuBar移至屏幕菜单栏?

根据完成的时间,在程序启动后设置属性可能为时已晚,无法生效。而是在启动时添加设置。

java -Dapple.laf.useScreenMenuBar=true -jar MyApplication.jar

或者,

Info.plist
如Mac OS X的Java部署选项,Java词典Info.plist键,关于Info.plist键和Java运行时系统属性所述,在应用程序捆绑包中设置属性。

<key>Properties</key><dict>    <key>apple.laf.useScreenMenuBar</key>    <string>true</string>    ...</dict>

附录:如下所示,使用@Urs Reupke或本人建议的方法不会出现问题。您的(丢失)DesktopMain可能是错误的。

import java.awt.Color;import java.awt.Dimension;import java.awt.EventQueue;import javax.swing.BorderFactory;import javax.swing.Jframe;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JPanel;public class NewMain {    public static void main(String[] args) {        System.setProperty("apple.laf.useScreenMenuBar", "true");        System.setProperty( "com.apple.mrj.application.apple.menu.about.name", "Name");        EventQueue.invokeLater(new Runnable() { @Override public void run() {     Jframe frame = new Jframe("Gabby");     final JPanel dm = new JPanel() {         @Override         public Dimension getPreferredSize() {  return new Dimension(320, 240);         }     };     dm.setBorder(BorderFactory.createLineBorder(Color.blue, 10));     frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);     frame.add(dm);     frame.pack();     frame.setLocationByPlatform(true);     JMenuBar menuBar = new JMenuBar();     JMenu fileMenu = new JMenu("File");     menuBar.add(fileMenu);     frame.setJMenuBar(menuBar);     frame.setVisible(true); }        });    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/507622.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号