如何自定义 JFrame 上的标题栏?
我希望在我的 Java Swing 桌面应用程序中有一个自定义的标题栏。最好的方法是什么?我可以通过在 JFrame 的构造函数中使用以下代码来使用“Swing 标题栏”:
this.setUndecorated(true);
this.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
但是如何自定义它呢?是否有任何我可以覆盖的 UI 委托,或者我是否必须从头开始实现自己的标题栏?
我想要类似 Lawson 智能办公室的东西:
I would like to have a customized title bar in my Java Swing desktop application. What is the best way to do that? I can use a "Swing-title bar" by using the following code in the constructor for my JFrame:
this.setUndecorated(true);
this.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
But how do I customize it? Is there any UI delegates that I can override or do I have to implement my own title bar from scratch?
I want something like Lawson Smart Office:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以在 Substance 外观 (镜像源)。搜索 SubstanceRootPaneUI 和 SubstanceTitlePane 的代码。该实现依赖于 Substance 中的其他类,并且在特定库之外不容易重用 - 也不是故意的。
You can see an example in Substance look-and-feel (mirrored source). Search the code for SubstanceRootPaneUI and SubstanceTitlePane. The implementation depends on other classes in Substance, and will not be easy to reuse outside the specific library - nor is it meant to.