像这样,A a = new A(),我如何得到一个名字?(从a)获取字符串“a”?
有一个JPanel包含一些JTextFields,一个地图包含所有的JTextFields的名字(变量的名字).我想将地图的值设置为JTextFields的文本.
public void mapToJPanel(Map map,JPanel panel) { Component[] compArr = panel.getComponents(); for (Component comp : compArr) { if (comp.getClass().getSimpleName().equals("JTextField")) { JTextField textField = (JTextField) comp; textField.setText(map.get(textField.getName()).toString());//getName() method } } }
Accross getName()方法,我得到null -_-我知道getName()方法不用于获取变量名称.
我正在使用netbeans做Java swing视觉开发,所以我无法重写组件(如JTextField).
解决方法
您可以使用
Component.setName()
给Swing和AWT组件命名.