是否可以只在顶部有一个java swing边框?

Bec*_*cky 35 java swing border

我知道如何使用边框创建边框,BorderFactory但是我没有看到任何可以指定我想要边框的边:S

Ale*_*lex 74

您可以使用MatteBorder指定每侧边框的尺寸.构造函数MatteBorder是:

public MatteBorder(int top,
                   int left,
                   int bottom,
                   int right,
                   Color matteColor)
Run Code Online (Sandbox Code Playgroud)

所以如果你想在你的底部和右边都有一个边框JPanel,你可以这样写:

JPanel panel = new JPanel();
panel.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 1, Color.BLACK));
Run Code Online (Sandbox Code Playgroud)

  • 有没有一种简单的方法可以让MatteBorder使用斜角样式圆角?我需要使用遮罩边框来控制渲染元素的边,但是我会遇到方角.;-( (6认同)
  • 加1实际提供代码.这应该是公认的答案! (2认同)

Poo*_*ool 37

来自Sun教程:

下图显示了一些遮罩边框.创建遮罩边框时,可以指定它在组件的顶部,左侧,底部和右侧占据的像素数.

http://java.sun.com/docs/books/tutorial/figures/uiswing/components/BorderDemo2.png

(Java文档)


Tom*_*ine 6

遮罩和空边框允许您指定每侧的尺寸,可以为零.

Border如果您想要自定义外观,界面本身很容易实现.我想可能有第三方库可用,包含Java库中未包含的样式.