【问题标题】:Image for the File Menu of JMenuBarJMenuBar 的文件菜单的图像
【发布时间】:2014-01-26 16:16:47
【问题描述】:

我已经为我的 java 程序创建了一个完整的菜单栏,并且一切正常,但是我想要一个文件菜单的图像,而不是文本。我知道您可以为 JMenuItem 添加图标或图像,但是否可以为 JMenu 本身添加图标或图像。

因此,不是显示“文件”或“编辑”的文本,而是在其中显示图像,这样当您单击图像时,它会显示下拉菜单/JMenuItem?

下面是我的代码中的一个简短的 sn-p

    //File Menu.
    JLabel fileButton = new JLabel(new ImageIcon("buttonfile.jpg"));
    MenuBarFile = new JMenu("file");
    //MenuBarFile.setIcon("buttonfile.jpg");
    menuBar.add(menu);

该类顺便扩展了JMenuBar,并在需要的地方添加到另一个类中。

顺便说一句,我已经尝试了明显的方法:

menuBar.add(fileButton);

将 JLabel 图像添加到 menuBar 没有任何作用,它只是显示空白。

【问题讨论】:

    标签: java jmenubar


    【解决方案1】:

    JMenu 继承自 AbstractButton,它有一个 setIcon() method 允许设置菜单的图标。

    顺便说一句,JMenu 也继承自 JMenuItem。因此,如果您设法在 JMenuItem 上设置了一个图标,您应该能够以同样的方式在 JMenu 上进行设置。

    【讨论】:

    • menu = new JMenu("File", new ImageIcon("buttonfile.jpg"));这就是我为 JMenuItem 设置它的方式,但是当我对 JMenu 执行相同操作时,它给出了一个找不到符号错误
    • 阅读 javadoc。我什至给了你它的链接。 JMenu 没有这样的构造函数。但它仍然有一个setIcon() 方法。该类的设计者可能没有提供这样的构造函数,因为几乎不需要带有图标的 JMenu。
    • 完成,我的语法错误,感谢您的帮助,只是我正在为我的程序创建一个 Microsoft Office 外观,我想要一个图像而不是文本,这就是为什么。
    猜你喜欢
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    • 2022-09-27
    • 1970-01-01
    • 1970-01-01
    • 2017-05-03
    • 1970-01-01
    相关资源
    最近更新 更多