Java 如何删除JFrame中的标题栏

Java 如何删除JFrame中的标题栏,java,swing,jframe,titlebar,Java,Swing,Jframe,Titlebar,我使用以下代码进行练习 我还要补充一点 frame.setSize(frame.getMaximumSize()); 在createAndShowGUI()方法中 更重要的是,我希望这个窗口没有标题栏,关闭和最小化按钮 我尝试了以下代码 frame.setUndecorated(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 如果我在pack()之前添加了这段代码,它将进入内联循环,在线程“AWT-EventQu

我使用以下代码进行练习

我还要补充一点

frame.setSize(frame.getMaximumSize());
在createAndShowGUI()方法中

更重要的是,我希望这个窗口没有标题栏,关闭和最小化按钮

我尝试了以下代码

frame.setUndecorated(true);
  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
如果我在pack()之前添加了这段代码,它将进入内联循环,在线程“AWT-EventQueue-0”java.lang.NegativeArraySizeException中出现此异常异常

如果我添加了createAndShowGUI()方法的最后一行,它会在线程“AWT-EventQueue-0”java.AWT.IllegalComponentStateException中抛出异常:该帧是可显示的。

我该怎么办


谢谢。

好吧,
createAndShowGUI()
中的以下代码片段对我很有用:

JFrame frame = new JFrame("BorderLayoutDemo");
frame.setUndecorated(true); // Remove title bar
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
addComponentsToPane(frame.getContentPane());
frame.pack();
frame.setVisible(true);

请注意,我不确定通过手动将未实现帧的大小设置为其最大大小(最初为
(0,0)
)来尝试实现什么。

是的,谢谢!在我删除setSize之后,它工作了。但是我不知道应该如何将JFrame实例的大小设置为(0,0)?这只在您希望帧最大化的情况下起作用。如果没有,请确保在打包框架之前设置未装饰(true)。
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Already there
    frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
    frame.setUndecorated(true);