Java swing:创建与外观相同的薄按钮边框&;感到默认

Java swing:创建与外观相同的薄按钮边框&;感到默认,java,swing,user-interface,look-and-feel,Java,Swing,User Interface,Look And Feel,我有一个图标按钮,我想用一个边框。默认边框看起来太厚 创建与当前外观相同颜色的边框的最简单方法是什么 Button myButton = createMyIconButton(); ... public Button createMyIconButton() { ... setBorder(BorderFactory.createLineBorder(???, 1)); } 默认边框看起来太厚 也许你正在寻找: button.setMargin( new Insets(

我有一个图标按钮,我想用一个边框。默认边框看起来太厚

创建与当前外观相同颜色的边框的最简单方法是什么

Button myButton = createMyIconButton();

...

public Button createMyIconButton()
{
   ...
   setBorder(BorderFactory.createLineBorder(???, 1));
}
默认边框看起来太厚

也许你正在寻找:

    button.setMargin( new Insets(2, 2, 2, 2) );
默认边框看起来太厚

也许你正在寻找:

    button.setMargin( new Insets(2, 2, 2, 2) );

这个有问题吗border@mKorbel:我不明白。如果1)某些本机操作系统上的某些L&F不返回任何边框,或LineBorder,会发生什么情况2)您的想法将对L&F和本机操作系统敏感,3)您没有写我想从Nimbus或Windows操作系统上的金属L&F提取边框,4)您可能需要跳过,但是对于所有可能的L&F和平台,5)对于MetalButtonUI和Windows操作系统来说是最简单的方法,注意,还没有完成,一些绘画效果来自UI和Buttonmodiles,这是一个问题border@mKorbel:我不明白。如果1)某些本机操作系统上的某些L&F不返回任何边框,会发生什么情况,也不是LineBorder 2)你的想法将对L&F和本机操作系统敏感,3)你没有写我想在Windows操作系统上从Nimbus或Metal L&F中提取边框,4)你可能需要覆盖,但对于所有可能的L&F和平台,5)MetalButtonUI和Windows操作系统最简单的方法,注意,尚未完成,一些绘画效果来自UI和ButtonModel