Java 框架装饰

Java 框架装饰,java,swing,jinternalframe,Java,Swing,Jinternalframe,我想知道,有没有办法将我的内部框架装饰设置为普通的窗户装饰,而不是像上面链接中的图像?非常感谢。我想不必了。内部框架装饰由look&feel提供,其中JFrame&JDialog从操作系统获得装饰 话虽如此,还是有一些外观和感觉可以提供定制的装饰(到顶层窗口) 例如,Metal具有以下UI属性: RootPane.colorChooserDialogBorder = javax.swing.plaf.metal.MetalBorders$QuestionDialogBorder@182d9c06


我想知道,有没有办法将我的内部框架装饰设置为普通的窗户装饰,而不是像上面链接中的图像?非常感谢。

我想不必了。内部框架装饰由look&feel提供,其中JFrame&JDialog从操作系统获得装饰

话虽如此,还是有一些外观和感觉可以提供定制的装饰(到顶层窗口)

例如,Metal具有以下UI属性:

RootPane.colorChooserDialogBorder = javax.swing.plaf.metal.MetalBorders$QuestionDialogBorder@182d9c06
RootPane.errorDialogBorder = javax.swing.plaf.metal.MetalBorders$ErrorDialogBorder@63b9240e
RootPane.fileChooserDialogBorder = javax.swing.plaf.metal.MetalBorders$QuestionDialogBorder@687b6889
RootPane.informationDialogBorder = javax.swing.plaf.metal.MetalBorders$DialogBorder@7e0c2ff5
RootPane.plainDialogBorder = javax.swing.plaf.metal.MetalBorders$DialogBorder@5a5e5a50
RootPane.questionDialogBorder = javax.swing.plaf.metal.MetalBorders$QuestionDialogBorder@95c083
RootPane.warningDialogBorder = javax.swing.plaf.metal.MetalBorders$WarningDialogBorder@61b383e9
使用这些,您应该能够交换内部框架的边框

但在默认系统下,windows根窗格的外观仅提供以下属性

RootPane.ancestorInputMap = javax.swing.plaf.InputMapUIResource@4ba33d48
RootPane.defaultButtonWindowKeyBindings = [Ljava.lang.Object;@1cc7b00c
RootPaneUI = com.sun.java.swing.plaf.windows.WindowsRootPaneUI

现在…也许可以使用JNI来实现这一点,但我怀疑,因为Swing使用了一个轻量级的绘制过程,它只会以一团乱麻告终。

@trashgood感谢您提供的信息,看起来很有趣@疯狂的程序员,垃圾神,谢谢你的信息和解释。我很感激!