当我在 JTextField
周围放置一个 TitledBorder
时,整个背景都变白了,而不仅仅是包含文本的区域。
我认为问题在于文本字段是一个不透明的组件。那么,是否可以将标题和封闭框置于通常的灰色背景中,同时继续将文本背景涂成白色?
最佳答案
我曾希望您可以只使用 CompoundBorder
,但是,因为字段的实际背景颜色是白色,所以这没有达到预期的效果。
相反,您可以将字段包装在 JPanel
中并为其应用边框,例如
setLayout(new GridBagLayout());
JTextField field = new JTextField(10);
JPanel panel = new JPanel();
panel.add(field);
panel.setBorder(BorderFactory.createTitledBorder("Hello"));
add(panel);
现在,如果您不希望该字段有边框,您可以将其设置为null
关于java - JTextField 上的 TitledBorder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31447448/