A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© MK_Chan 中级黑马   /  2014-4-3 14:15  /  1159 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 MK_Chan 于 2014-4-3 14:17 编辑
学Java没多久,自己编写的简单记事本程序,弄了一个事件“新建”,但是我每次运行都是提示找不到符号,各位帮帮忙看看哪里出了问题。
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. class NotePad extends Frame
  4. {
  5.         Menu menu1,menu2,menu3;
  6.         MenuBar menubar;
  7.         MenuItem item1,item2,item3,item4,item5,item6,item7;
  8.         TextArea text;
  9.         NotePad(String s)
  10.         {
  11.                 setTitle(s);
  12.                 menu1=new Menu("文件");
  13.                 menu2=new Menu("编辑");
  14.                 menu3=new Menu("帮助");
  15.                 menubar=new MenuBar();
  16.                 item1=new MenuItem("新建");
  17.                 item1.addActionListener(new M());
  18.                 item2=new MenuItem("打开");
  19.                 item3=new MenuItem("保存");
  20.                 item4=new MenuItem("退出");
  21.                 item5=new MenuItem("前切");
  22.                 item6=new MenuItem("复制");
  23.                 item7=new MenuItem("粘贴");
  24.                 text=new TextArea();
  25.                 menu1.add(item1);
  26.                 menu1.add(item2);
  27.                 menu1.add(item3);
  28.                 menu1.add(item4);
  29.                 menu2.add(item5);
  30.                 menu2.add(item6);
  31.                 menu2.add(item7);
  32.                 menubar.add(menu1);
  33.                 menubar.add(menu2);
  34.                 menubar.add(menu3);
  35.                 add(text,BorderLayout.CENTER);
  36.                 setBounds(100,100,600,400);
  37.                 setVisible(true);
  38.                 setMenuBar(menubar);
  39.                 validate();
  40.                 addWindowListener(new WindowAdapter()
  41.                 {
  42.                         public void windowClosing(WindowEvent e1)
  43.                         {
  44.                                 System.exit(0);
  45.                         }
  46.                 });
  47.         }
  48. }
  49. class M implements ActionListener
  50. {
  51.         public void actionPerformed(ActionEvent e2)
  52.         {
  53.                 if(e2.getSource==item1)
  54.                 {
  55.                         text.setText(null);
  56.             }
  57.         }
  58. }
  59. public class JSB
  60. {
  61.         public static void main(String args[])
  62.         {
  63.                 NotePad note=new NotePad("记事本");
  64.         }
  65. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
itpower + 1

查看全部评分

2 个回复

倒序浏览
我没看懂,你这个类 是怎么调用的text

  1. class M implements ActionListener
  2. {
  3.         public void actionPerformed(ActionEvent e2)
  4.         {
  5.                 if(e2.getSource==item1)
  6.                 {
  7.                         text.setText(null);
  8.             }
  9.         }
  10. }
复制代码
回复 使用道具 举报
import java.awt.*;
import java.awt.event.*;

class NotePad extends Frame {
        Menu menu1, menu2, menu3;
        MenuBar menubar;
        MenuItem item1, item2, item3, item4, item5, item6, item7;
        TextArea text;

        NotePad(String s) {
                setTitle(s);
                menu1 = new Menu("文件");
                menu2 = new Menu("编辑");
                menu3 = new Menu("帮助");
                menubar = new MenuBar();
                item1 = new MenuItem("新建");
                M m = new M();
                m.setMenuItem(item1);
                item1.addActionListener(m);
                item2 = new MenuItem("打开");
                item3 = new MenuItem("保存");

                item4 = new MenuItem("退出");
                item5 = new MenuItem("前切");
                item6 = new MenuItem("复制");
                item7 = new MenuItem("粘贴");
                text = new TextArea();
                menu1.add(item1);
                menu1.add(item2);
                menu1.add(item3);
                menu1.add(item4);
                menu2.add(item5);
                menu2.add(item6);
                menu2.add(item7);
                menubar.add(menu1);
                menubar.add(menu2);
                menubar.add(menu3);
                add(text, BorderLayout.CENTER);
                setBounds(100, 100, 600, 400);
                setVisible(true);
                setMenuBar(menubar);
                validate();
                addWindowListener(new WindowAdapter() {
                        public void windowClosing(WindowEvent e1) {
                                System.exit(0);
                        }
                });
        }
}

class M implements ActionListener {
        MenuItem menuItem;

        public void actionPerformed(ActionEvent e2) {
                MenuItem item = (MenuItem) e2.getSource();
                if (item == menuItem) {
                        menuItem.setLabel("");
                }
        }

        public void setMenuItem(MenuItem menuItem) {
                this.menuItem = menuItem;
        }

}

public class xiaohan {
        public static void main(String args[]) {
                NotePad note = new NotePad("记事本");
        }
}
这样写可以运行,不知道楼主能不能看懂
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马