Swing Java获取边框颜色和大小

Swing Java获取边框颜色和大小,swing,colors,size,border,Swing,Colors,Size,Border,如何获取边框颜色和大小?要获取边框颜色: JTextField tf = new JTextField(); tf.setBorder(new LineBorder(Color.red, 2)); Border border = tf.getBorder(); border.getBorderInsets(JTextField).bottom border.getBorderInsets(JTextField).left border.getBorderInsets(JTextField).r

如何获取边框颜色和大小?

要获取边框颜色:

JTextField tf = new JTextField();
tf.setBorder(new LineBorder(Color.red, 2));
Border border = tf.getBorder();
border.getBorderInsets(JTextField).bottom
border.getBorderInsets(JTextField).left
border.getBorderInsets(JTextField).right
border.getBorderInsets(JTextField).top
border.getLineColor() 
这只是关于如何获得边框大小的一个想法,如果您假设边框大小与组件大小相同,那么您可以将JTextField转换为JComponent,并获得JTextField的大小:

 ((LineBorder)JTextField.getBorder()).getLineColor();

但是您应该在将JTextField放入其容器后使用它,否则它将返回(0,0)。

我认为您误读了这个问题。。。他想得到
边框
的大小和颜色。遗憾的是,这看起来不可能。我不知道为什么这会被否决,但这是唯一对我有效的解决方案。谢谢
 ((LineBorder)JTextField.getBorder()).getLineColor();
 ((JComponent)JTextField).getSize();
JTextField tf = new JTextField();
tf.setBorder(new LineBorder(Color.red, 2));
LineBorder border = (LineBorder) tf.getBorder();
System.out.println("Border color = "+  border.getLineColor() 
                          + "  size= " + border.getThickness());