如何向 jtext 字段添加填充

如何向 jtextfield 添加一些填充?我试过了,没有任何效果。tf.setMargin(new Insets(5,5,5,5));


答案 1

您遇到的问题是UI在文本字段上设置自己的边框,覆盖您设置的边距。您可以在 的 javadoc 中看到有关此效果的警告。setMargin()

解决方案是让 UI 设置一个边框,然后挤进你自己的另一个边框:

field.setBorder(BorderFactory.createCompoundBorder(
        field.getBorder(), 
        BorderFactory.createEmptyBorder(5, 5, 5, 5)));

答案 2

你看看CompoundBorder,在那里你可以设置和与LineBorder(Color.gray, 1)

EmptyBorder(5, 5, 5, 5)

推荐