gpt4 book ai didi

java - 删除框架的标题栏并保留调整大小机制 - Java

转载 作者:行者123 更新时间:2023-11-30 05:07:13 25 4
gpt4 key购买 nike

我的问题与乔纳斯在下一个主题中提出的问题有关:

How to add support for resizing when using an undecorated JFrame?

How can I customize the title bar on JFrame?

我想创建一个没有 native 标题栏的自定义窗口。这可以通过调用来完成:

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(仅考虑标题栏和边框)

如何在不删除调整大小装饰器的情况下删除顶部标题栏?或者我应该自定义默认标题栏?我怎样才能通过简单的方法做到这一点?

这个想法是以只有边框的框架结束(并且重新调整大小工作......)。然后,我可以使用 JPanel 和触发关闭、最小化等操作系统事件的按钮创建自定义标题栏。

预先感谢您的支持。

最佳答案

您需要实现自己的鼠标监听器并解释鼠标手势,以编程方式调整窗口大小。

另一种选择是使用 JIDE Common Layer - 它提供了其 ResizingSupport 接口(interface)的多种实现,包括执行您所描述的操作的 ResizableFrame。

http://www.jidesoft.com/javadoc/com/jidesoft/swing/ResizableFrame.html

关于java - 删除框架的标题栏并保留调整大小机制 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4670225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com