繁体   English   中英

如何将自定义菜单操作和标题栏图标添加到JFrame

[英]How to add custom menu action and titlebar icon to JFrame

我有一个自定义的JFrame。 在标题栏上,我在左上方有一个图标,一个标题,然后在右侧有标准的最小化,最大化和关闭按钮。

单击标题栏中的图标时,将获得标准选项:“还原”,“移动”,“大小”,“最小化”,“最大化”,“关闭”。

如何在此处添加自己的菜单选项? 我想在这里添加和“始终放在最前面”选项。

另外,我想在标题栏的max,min,close按钮旁边添加一个按钮,以允许使用它来切换JFrame的“ Always On Top”状态。

您可以创建自己的自定义组件。 为此,请创建一个新类,该类例如extends JMenuBar并覆盖适合您需要的方法。 例如,很多时候,您想覆盖paintComponent(Graphics)

那不是你想要的,虽然。 自定义JMenuBar不会像您期望的那样工作。 “ JMenuBar”是标题栏下方的另一个栏。 我的Mac用户,但据我所知推移,它不是可以自定义标题栏,因为这不是由JVM处理。 无需使用本机代码即可修改的唯一东西是左上方的Icon。

有关此问题的更多信息,请查看此问题以及那里的最佳答案。 这将对您有很大帮助。

通过创建JMenuBar,JMenu和JMenuItem的常规实例,可以最好地解决您的问题(在顶部添加一个按钮来切换alwaysOnTop状态)。 然后将该MenuBar添加到Frame中,请使用JFrame.setJMenuBar(JMenuBar) 另请参阅如何使用菜单

我希望这有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM