【发布时间】:2011-06-07 21:35:55
【问题描述】:
我的问题与 Jonas 在接下来的主题中提出的问题有关:
How to add support for resizing when using an undecorated JFrame?
How can I customize the title bar on JFrame?
我想创建一个没有原生标题栏的自定义窗口。这可以通过调用来完成:
setUndecorated(true);
但是,这也删除了重新调整大小的机制。所以现在我正在使用下一个代码:
public UndecoratedFrame() {
this.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
menu.add(item);
menuBar.add(menu);
this.setJMenuBar(menuBar);
this.setUndecorated(true);
this.getRootPane().setBorder(border);
this.setSize(400,340);
this.setVisible(true);
}
这会返回一个像这样的窗口: http://www.roseindia.net/java/example/java/swing/CreateJList.shtml (只考虑标题栏和边框)
如何在不移除 re-size 装饰器的情况下移除顶部标题栏?或者我应该自定义默认标题栏?我怎样才能通过简单的方式做到这一点?
这个想法是用一个框架结束,只有它的边界(和调整大小的工作......)。然后,我可以创建一个自定义标题栏,其中包含一个 JPanel 和触发关闭、最小化等 OS 事件的按钮。
提前感谢您的支持。
【问题讨论】:
-
我开始回答这个问题,然后意识到已经有一个正确的答案。哦,废话,我什至意识到 我 已经回答了这个问题!所以关闭这个,伙计。
-
对不起,实际上我看到了那些帖子,但我想知道是否没有办法只删除标题栏。似乎没有。如果我删除栏,我会删除所有内容。我现在正在研究这种重新调整大小的重新实现方法。谢谢!