在AWT应用程序中,我需要设置TextField的边框颜色。
对于JTextField,我知道我们可以执行以下操作:
JTextField tf = new JTextField();
tf.setBorder(BorderFactory.createLineBorder(Color.decode("#2C6791")));
但是在awt TextField中没有setBorder()方法。有没有解决这个问题的方法?
tf.setBorder(new LineBorder(Color.red,1));
//new LineBorder(color,width);
tf.setBorder(new LineBorder(Color.red,1));
//new LineBorder(color,width);
public LineBorder(Color color) {
this(color, 1, false);
}
public LineBorder(Color color, int thickness) {
this(color, thickness, false);
}
@ConstructorProperties({"lineColor", "thickness", "roundedCorners"})
public LineBorder(Color color, int thickness, boolean roundedCorners) {
lineColor = color;
this.thickness = thickness;
this.roundedCorners = roundedCorners;
}
setBorder()
API建议如下:“通常情况下,当您想要在标准Swing组件上设置边框而不是JPanel
或JLabel
时,我们建议您将组件放置在JPanel
中,并在JPanel
上设置边框。”JComponent
。 - BarendBorder border = BorderFactory.createLineBorder(Color.BLUE, 5);
设置此组件的边框
JTextField.setBorder(border);
paint()
,但这看起来更容易。 - trashgod