我想修改标签。我在顶部创建它:
JLabel curStatus;
然后在启动所有gui的方法中......
curStatus = new JLabel("");
jfrm.add(curStatus);
然后对于接受字符串的方法,并将其作为jlabel的状态:
public void setCurStatus(String inCurStatus) {
curStatus.setText("hi!"); <<< ERROR ON THIS LINE...
curStatus.setVisible(true);
}
我收到此错误:
Exception in thread "main" java.lang.NullPointerException
答案 0 :(得分:0)
从代码片段中可以清楚地看到,设置文本时jLabel为null。 显而易见且唯一可能的原因是:在设置文本之前未执行GUI初始化代码。完全没有其他理由。
你再看一遍,并确保那些初始化发生在第一个(在构造函数的顶部调用它)
答案 1 :(得分:0)
从方法中删除@param
或使用
curStatus.setText(inCurStatus); // instead of curStatus.setText("Hi");
并通过&#34;嗨&#34;当你调用方法时作为参数。