How can I add padding to a jtextfield
you have look at CompoundBorder, there you can set LineBorder(Color.gray, 1)
and with
EmptyBorder(5, 5, 5, 5)
The problem you are having is that the UI is setting its own border on the text field, overriding the margin you set. You can see a warning to this effect in the javadoc of setMargin()
.
The solution is to let the UI set a border, then squeeze in another border of your own:
field.setBorder(BorderFactory.createCompoundBorder(
field.getBorder(),
BorderFactory.createEmptyBorder(5, 5, 5, 5)));