Java 在JTextArea中添加边距?

Java 在JTextArea中添加边距?,java,swing,jlabel,jtextarea,Java,Swing,Jlabel,Jtextarea,因此,我有一个JTextArea,它从左上角显示文本。我想在所有的四个边上都留一些边距,所以在文本和区域边界之间有一些空间 我做了很多研究,没有找到任何解决办法。我怎么做 另外,我在想,也许可以在所有4个边上贴一个标签来创建虚拟边距。如何创建具有一定宽度和高度的JLabel?可能是我没有正确理解您的问题。但是,您可以使用setMargin() 一些重要环节 可能是我没有正确理解你的问题。你不能使用setMargin()?正是@Smit所说的。只有4个像素值,代表顶部、底部、左侧和右侧的边距大小

因此,我有一个
JTextArea
,它从左上角显示文本。我想在所有的四个边上都留一些边距,所以在文本和区域边界之间有一些空间

我做了很多研究,没有找到任何解决办法。我怎么做


另外,我在想,也许可以在所有4个边上贴一个标签来创建虚拟边距。如何创建具有一定宽度和高度的
JLabel

可能是我没有正确理解您的问题。但是,您可以使用setMargin()

一些重要环节


可能是我没有正确理解你的问题。你不能使用
setMargin()
?正是@Smit所说的。只有4个像素值,代表顶部、底部、左侧和右侧的边距大小。AFAICT,这就是他要找的。设置边框没有那么好,因为它会删除默认的预期边框。复合边框可能有助于解决这个问题,但它比使用setMargin(在我们前面的评论之后是@Smit)更糟糕:我更喜欢不设置边框,因为它会删除预期的textfield边框。如果仍要使用边框,可以将textfield的现有边框与复合边框和空边框组合作为其内边框或外边框(取决于您尝试实现的效果)。如果是内部的,我更喜欢使用setMargin(),更简单、更健壮。@GuillaumePolet+1谢谢您提供的信息。如果您愿意,也可以添加此答案。
// set the margin for all four sides
tt.setMargin( new Insets(10,10,10,10) ); // tt is JTextArea instance