Java 可以在JFrame边框上添加菜单吗?
我有一个surface pro 3,大部分代码都是我编写的。我相信从micosoft商店下载的所有应用程序的菜单栏都位于Windows应用程序的左上角。目前,我正在使用Java开发一个Windows应用程序,希望我的设计在左上角的JFrame边框顶部有3个栏(菜单)。我在谷歌上搜索了一下,发现只有少数人也在尝试这样做,所有人都被告知使用JFrame是不可能的。如果是这样的话,我应该如何着手制作自己的组件来真正做到这一点Java 可以在JFrame边框上添加菜单吗?,java,windows,jframe,windows-applications,menubar,Java,Windows,Jframe,Windows Applications,Menubar,我有一个surface pro 3,大部分代码都是我编写的。我相信从micosoft商店下载的所有应用程序的菜单栏都位于Windows应用程序的左上角。目前,我正在使用Java开发一个Windows应用程序,希望我的设计在左上角的JFrame边框顶部有3个栏(菜单)。我在谷歌上搜索了一下,发现只有少数人也在尝试这样做,所有人都被告知使用JFrame是不可能的。如果是这样的话,我应该如何着手制作自己的组件来真正做到这一点 我不介意花上数小时、数天的时间来开发这个。因为一旦我可以创建它的库,它将非常
我不介意花上数小时、数天的时间来开发这个。因为一旦我可以创建它的库,它将非常有用 如果我很理解你的问题,你觉得这样的菜单怎么样
import javax.swing.*;
public class Menu {
public static void main (String[] args) {
JFrame frame = new JFrame();
frame.setSize(500, 300);
JMenuBar menuBar = new JMenuBar();
JMenu menu1 = new JMenu("menu1");
JMenu menu2 = new JMenu("menu2");
JMenu menu3 = new JMenu("menu3");
menuBar.add(menu1);
menuBar.add(menu2);
menuBar.add(menu3);
frame.setJMenuBar(menuBar);
frame.setUndecorated(true);
frame.setVisible(true);
}
}
这里是。您可以通过调用
frame.setUndercorated(true)
来取消装饰您的JFrame
,这将消除标题栏和大小调整等。然后您可以根据需要添加装饰,包括一个菜单。我已经运行了代码,看起来就像我想做的那样。但唯一的问题是最右边的最小化、最大化和关闭按钮不会显示。检查一下,也许会有帮助