空指针异常报错,就解答!!

牙疼格尔 2015-10-19 10:13:12
package SwingTest;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.logging.Handler;

import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JTextField;

public class Mymenu extends JFrame {
JTextField jt;
ButtonGroup colorgroup;
JRadioButtonMenuItem[] coloritem;
Color[] colorvalues = { Color.GREEN, Color.YELLOW, Color.BLACK, Color.RED };

public Mymenu() {
JMenu colormenu = new JMenu("COLOR(C)");
colormenu.setMnemonic('C');
String[] colornames = { "GREEN", "YELLOW", "BLACK", "RED" };
colorgroup = new ButtonGroup();
for (int i = 0; i < colornames.length; i++) {

coloritem = new JRadioButtonMenuItem[colornames.length];
colorgroup.add(coloritem[i]);
colormenu.add(coloritem[i]);
coloritem[i].addActionListener(new Handler());

}
add(jt);
JMenuBar bar = new JMenuBar();
setJMenuBar(bar);
bar.add(colormenu);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(500, 350, 600, 400);
setVisible(true);
setResizable(false);

}

class Handler implements ActionListener {
public void actionPerformed(ActionEvent e) {
for (int i = 0; i < coloritem.length; i++) {
if (coloritem[i].isSelected())
jt.setForeground(colorvalues[i]);
break;
}
}
}

public static void main(String[] args) {
Mymenu jf = new Mymenu();
jf.setTitle("Test Window");
}
}







Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1090)
at java.awt.Container.add(Container.java:410)
at javax.swing.JPopupMenu.add(JPopupMenu.java:290)
at javax.swing.JMenu.add(JMenu.java:579)
at SwingTest.Mymenu.<init>(Mymenu.java:30)
at SwingTest.Mymenu.main(Mymenu.java:56)

...全文
196 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
牙疼格尔 2015-10-19
  • 打赏
  • 举报
回复
第30行 colormenu.add(coloritem[i]); 第56行 Mymenu jf = new Mymenu();

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧