如何在 JFrame 上自定义标题栏?

2022-09-03 15:44:38

我想在我的Java Swing桌面应用程序中有一个自定义的标题栏。最好的方法是什么?我可以通过在我的JFrame的构造函数中使用以下代码来使用“Swing-title bar”:

this.setUndecorated(true);
this.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);

但是我该如何自定义它呢?是否有任何可以重写的 UI 委托,或者我是否必须从头开始实现自己的标题栏?

我想要像Lawson Smart Office这样的东西:Lawson Smart Office


答案 1

您可以在物质外观镜像源)中看到一个示例。在代码中搜索 SubstanceRootPaneUI 和 SubstanceTitlePane。该实现依赖于Substance中的其他类,并且在特定库之外不容易重用 - 也不是故意的。


答案 2

推荐