我正在使用Netbeans GUI,我想在jTextField的开头添加3个像素的空间:

我已经尝试过在GUI中使用setMargin,setInset进行操作,但它不会改变任何内容。

我还有一个问题,为什么右下边框不圆角?这是我的代码:

Border roundedBorder = new LineBorder(new Color(210,210,210), 1, true);
researchTextField.setBorder(roundedBorder);

非常感谢你,

问候

最佳答案

使用setMargin(...)应该可以。
但是,如果您还使用边框,则可能是问题所在。
尝试使用CompoundBorder,其中内部边框是EmptyBorder(),而外部边框是您的另一个边框。例如:

Border rounded = new LineBorder(new Color(210,210,210), 1, true);
Border empty = new EmptyBorder(0, 3, 0, 0);
Border border = new CompoundBorder(rounded, empty);
textField.setBorder(border);

我不确定为什么您的右下角没有四舍五入。在XP上使用Metal LAF,右边界(顶部和底部)显示为圆形,但左边界未显示为圆形。当我使用2或更大的边框大小时,所有角均显示为相等的圆角。

09-25 20:38