我有一个自定义的JFrame。在标题栏上,左上角有一个图标,标题,右边是标准的最小化,最大化和关闭按钮。
当我点击标题栏中的图标时,我会得到标准选项:恢复,移动,大小,最小化,最大化,关闭。
如何在此处添加自己的菜单选项?我想添加" Always On Top"选项在这里。
此外,我想在标题栏上的最大,最小,关闭按钮旁边添加一个按钮,以允许用户切换" Always On Top" JFrame的状态。
答案 0 :(得分:0)
您可以创建自己的自定义组件。为此,请创建一个新类extends JMenuBar
,例如并覆盖符合您需求的方法。通常,例如,人们想要覆盖paintComponent(Graphics)
。
JMenuBar
不会按预期工作。 “JMenuBar”是标题栏下方的另一个栏。我是Mac用户,但据我所知,不可以自定义标题栏,因为这不是由JVM处理的。唯一可以在不使用本机代码的情况下修改的是左上角的Icon。
有关详细信息,请查看this question以及那里的最佳答案。这将对您有所帮助。
您的问题(在顶部添加一个用于切换alwaysOnTop
状态的按钮)最好通过创建JMenuBar,JMenu和JMenuItem的普通实例来解决。
然后,将该MenuBar添加到您的Frame,使用JFrame.setJMenuBar(JMenuBar)
。另见How to use Menus。
我希望这有帮助!