Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 递增JTextArea中整数的值_Java_Swing_Jbutton_Actionlistener_Jtextarea - Fatal编程技术网

Java 递增JTextArea中整数的值

Java 递增JTextArea中整数的值,java,swing,jbutton,actionlistener,jtextarea,Java,Swing,Jbutton,Actionlistener,Jtextarea,我在下面的代码中创建了一个JTextArea和Menubar,并在其中添加了menuItem Inc 我已经对“val”=0的值进行了编码,因此当代码运行并出现帧时,首先看到的是零。但我想在按下Inc按钮时将这个“0”增加到+1。知道吗,当我按下Inc键时,它会一直显示“0” 我的代码如下: public class Menu { public static void main(String[] args) {

我在下面的代码中创建了一个JTextArea和Menubar,并在其中添加了menuItem Inc

我已经对“val”=0的值进行了编码,因此当代码运行并出现帧时,首先看到的是零。但我想在按下Inc按钮时将这个“0”增加到+1。知道吗,当我按下Inc键时,它会一直显示“0” 我的代码如下:

     public class Menu
      {
        public static void main(String[] args)
           {

           myFrame frame = new myFrame();
           frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
           frame.setVisible(true);
           frame.setSize(300, 500);
           frame.setLocation(600,300);
           frame.setTitle("My Menu");
          }  
    }
  class myFrame extends JFrame implements ActionListener 
    {

        private static final long serialVersionUID = 1L;

        JTextArea area;
        JMenuItem inc;
        int val = 0;

        public myFrame()
      {

        JTextArea area = new JTextArea(20,15);
        add(new JScrollPane(area), BorderLayout.CENTER);

        String aString = Integer.toString(val);
        area.setText(String.valueOf(aString));

        JMenuBar menuBar = new JMenuBar();
        JMenu menu = new JMenu("Count");

        menuBar.add(menu);
        setJMenuBar(menuBar);

        JMenuItem inc = new JMenuItem("Inc");
        menu.add(inc);

        inc.addActionListener(this);
     }
  @Override
     public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        if(e.getActionCommand().equals("Inc")) 
   {
    int result = val+1;
    String aString = Integer.toString(result);

    area.setText(String.valueOf(aString));
   }

  }  
}

覆盖
区域
变量

更改:

JTextArea area = new JTextArea(20,15);
致:


myFrame
s构造函数中,替换
JTextArea=newjtextarea(20,15)
区域=新的JTextArea(20,15)

查看您的控制台。您应该看到NullPointerException的堆栈跟踪。分析堆栈跟踪,并尝试找出什么是null以及为什么是null。提示:实例字段与局部变量。请阅读。
area = new JTextArea(20,15);