diff --git a/src/java2020spring/CHD.java b/src/java2020spring/CHD.java new file mode 100644 index 0000000000000000000000000000000000000000..6b8c75fa16266c7d3eefd07336843977cb37dc2d --- /dev/null +++ b/src/java2020spring/CHD.java @@ -0,0 +1,383 @@ +package java2020spring; +import java.util.Calendar; + + +import java.awt.MenuBar; +import java.awt.Menu; +import java.awt.Frame; +import java.awt.Button; +import java.awt.TextArea; +import java.awt.Dialog; +import java.awt.MenuItem; +import java.awt.Color; +import java.awt.FileDialog; +import java.awt.Label; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.OutputStreamWriter; +import java.io.IOException; +import java.io.InputStreamReader; +import java.awt.event.MouseMotionListener; +import java.awt.event.ActionListener; +import java.awt.event.ActionEvent; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.awt.event.MouseEvent; +public class CHD implements MouseMotionListener,ActionListener{ + public static void main(String[] args) { + CHD o = new CHD(); + } + private TextArea ta; + private String s = ""; + private String s7=""; + private String s8=""; + private Frame fr; + private int tongji1; + private int tongji2; +public CHD() { + Frame fr = new Frame("文本编辑器"); + TextArea ta = new TextArea(); + MenuBar m0 = new MenuBar(); + Menu m1 = new Menu("文件"); + Menu m2 = new Menu("编辑"); + Menu m3 = new Menu("帮助"); + Menu m4 = new Menu("工具栏"); + Menu m5 = new Menu("格式"); + Menu m6 = new Menu("查看"); + MenuItem mi1 = new MenuItem("保存"); + MenuItem mi2 = new MenuItem("新建"); + MenuItem mi3 = new MenuItem("退出"); + MenuItem mi4 = new MenuItem("查看帮助"); + MenuItem mi5 = new MenuItem("打开"); + MenuItem mi6 = new MenuItem("页面设置"); + MenuItem mi7 = new MenuItem("时间和日期"); + MenuItem mi8 = new MenuItem("复制"); + MenuItem mi9 = new MenuItem("粘贴"); + MenuItem mi10 = new MenuItem("剪切"); + MenuItem mi11 = new MenuItem("撤销"); + MenuItem mi12 = new MenuItem("删除"); + MenuItem mi13 = new MenuItem("Web工具"); + MenuItem mi14 = new MenuItem("绘图"); + MenuItem mi15 = new MenuItem("自定义"); + MenuItem mi16 = new MenuItem("统计"); + MenuItem mi17 = new MenuItem("另存为"); + MenuItem mi18 = new MenuItem("查找"); + MenuItem mi19 = new MenuItem("自动换行"); + MenuItem mi20 = new MenuItem("字体"); + MenuItem mi21 = new MenuItem("查看帮助"); + MenuItem mi22 = new MenuItem("关于记事本"); + MenuItem mi23 = new MenuItem("状态栏"); + m1.add(mi1); + m1.add(mi2); + m1.add(mi5); + m1.add(mi3); + m1.add(mi6); + m1.add(mi17); + m2.add(mi7); + m2.add(mi8); + m2.add(mi9); + m2.add(mi10); + m2.add(mi11); + m2.add(mi12); + m2.add(mi18); + m3.add(mi21); + m3.add(mi22); + m4.add(mi13); + m4.add(mi14); + m4.add(mi15); + m4.add(mi16); + m5.add(mi19); + m5.add(mi20); + m6.add(mi23); + m0.add(m1); + m0.add(m2); + m0.add(m3); + m0.add(m4); + m0.add(m5); + m0.add(m6); + fr.setMenuBar(m0); + ta.setEditable(true); + ta.addMouseMotionListener(this); + ta.addKeyListener(new KeyAdapter() + { + public void keyPressed(KeyEvent e) + { + System.out.println("key Pressed"); + } + public void keyReleased(KeyEvent e) + { + System.out.println("key Released"); + } + public void keyTyped(KeyEvent e) + { + s = s + e.getKeyChar(); + } + } + ); + mi1.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + System.out.println("您正在保存文件,请稍后"); + try + { + baocun(); + } catch (IOException e1) + { + e1.printStackTrace(); + } + } + } + ); + mi2.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + System.out.println("正在新建文本文件,请稍后"); + try + { + xinjian(); + } catch (IOException e1) + { + e1.printStackTrace(); + } + } + } + ); + mi3.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + System.out.println("您已成功退出"); + System.exit(1); + } + } + ); + MenuItem i22=new MenuItem("关于记事本"); + + mi4.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + ta.setText("这是个文本编辑器 \n你可以把你想写的写到下面那个绿色区域\n\n这个文本编辑器的功能有:\n"+ + "1.可以新建文本文件\n2.可以进行页面设置\n3.可以查看帮助内容\n4.可以删除你所写的\n5.可以查看当前系统时间\n"+ + "6.可以打开文本文件\n7.可以保存文本文件\n8.系统会监控你在这个编辑器上的所有行为\n9.可以计数你所输入的字母和数字的个数"+ + "\n\n注意事项\n新建的文本文件的位置在D://自己的软件//66.txt\n这是我自己设置的,你的电脑可能没有这个目录\n" + + "当你获取源代码后请自行修改,否则会引发异常"); + } + } + ); + + mi5.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + try + { + s8 = dakai(); + ta.setText(s8); + } catch (FileNotFoundException e1) + { + e1.printStackTrace(); + } + } + } + ); + + mi6.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + yemianshezhi(); + } + } + ); + mi7.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + Calendar cal = Calendar.getInstance(); + int y = cal.get(Calendar.YEAR); + int m = cal.get(Calendar.MONTH); + int d = cal.get(Calendar.DATE); + int h = cal.get(Calendar.HOUR_OF_DAY); + int mi = cal.get(Calendar.MINUTE); + int s = cal.get(Calendar.SECOND); + String t = "现在时刻是"+y+"年"+m+"月"+d+"日"+h+"时"+mi+"分钟"+s+"秒"; + ta.setText(t); + } + } + ); + mi12.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + String t1 = ""; + ta.setText(t1); + } + } + ); + mi16.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + tongji(); + ta.setText("你所输入字母的个数是:"+tongji1+"\n你所输入数字的个数是:"+tongji2); + } + } + ); + fr.add(ta); + fr.setVisible(true); + fr.setBounds(100,100,400,400); + } + public void tongji() { + char[] shuzu = s.toCharArray(); + for(int i=0;i=97)) { + tongji1 = tongji1 + 1; + } + if((shuzu[i]>=49)&&(shuzu[i]<=57)) { + tongji2 = tongji2 + 1; + } + } + } + public void actionPerformed(ActionEvent e) + { + System.exit(1); + } + @Override + public void mouseDragged(MouseEvent e) + { + System.out.println("mouse Dragged"); + } + @Override + public void mouseMoved(MouseEvent e) + { + } + public void baocun() throws IOException,NullPointerException + { + FileDialog fd = new FileDialog(fr,"请输入你要保存的文件名",FileDialog.SAVE); + System.out.println("你在TextArea里的输入为:"+s); + fd.setVisible(true); + if(fd.getDirectory()==null) { + System.out.println("你没有选择保存位置"); + } + try + { + FileOutputStream fos = new FileOutputStream(fd.getDirectory() + fd.getFile()); + OutputStreamWriter osw = new OutputStreamWriter(fos); + osw.write(s); + osw.flush(); + osw.close(); + fos.close(); + } + catch(Exception e) + { + System.out.println("保存异常"); + }finally { + System.out.println("您的内容保存到了:"+fd.getDirectory()+fd.getFile()); + } + } + + + public void xinjian() throws IOException + { + String s = "D://自己的软件"; + String p = "66.txt"; + File f = new File(s,p); + if(!f.exists()) + { + f.createNewFile(); + System.out.println("新建成功"); + System.out.println("新建文本文件的位置:"+f.getPath()); + } + } + public String dakai() throws FileNotFoundException + { + FileDialog fd = new FileDialog(fr,"打开",FileDialog.LOAD); + fd.setVisible(true); + if(fd.getFile()==null) + { + System.out.println("打开失败"); + } + try + { + FileInputStream fis1 = new FileInputStream(fd.getDirectory()+fd.getFile()); + InputStreamReader isr1 = new InputStreamReader(fis1); + char[] cbuf = new char[10]; + isr1.read(cbuf, 0, 10); + for(int j=0;j<10;j++) + { + s7 = s7 + cbuf[j]; + } + } + catch(Exception e) + { + System.out.println("打开异常"); + } + return s7; + } + public void yemianshezhi() + { + Dialog d; + d = new Dialog(fr,"页面设置",true); + d.setBounds(200,200,400,500); + Label l = new Label("设置背景颜色,只需点击对应的按钮即可设置成相应的颜色"); + Button b1 = new Button("红色"); + Button b2 = new Button("黄色"); + Button b3 = new Button("蓝色"); + Button b4 = new Button("绿色"); + d.add(l,"North"); + d.add(b1,"Center"); + d.add(b2,"East"); + d.add(b3,"South"); + d.add(b4,"West"); + d.addWindowListener(new WindowAdapter() + { + public void windowClosing(WindowEvent e) + { + System.exit(1); + } + } + ); + b1.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + b1.setBackground(Color.RED); + } + } + ); + b2.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + b2.setBackground(Color.YELLOW); + } + } + ); + b3.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + b3.setBackground(Color.BLUE); + } + } + ); + b4.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + b4.setBackground(Color.GREEN); + } + } + ); + d.setVisible(true); + } + } + + \ No newline at end of file diff --git a/src/java2020spring/CHDD.java b/src/java2020spring/CHDD.java new file mode 100644 index 0000000000000000000000000000000000000000..4a3912e248e80b8671cf9019c707364d2d7806aa --- /dev/null +++ b/src/java2020spring/CHDD.java @@ -0,0 +1,20 @@ +package java2020spring; +import java.awt.Frame; +import java.awt.TextArea; +import java.awt.event.ActionListener; +import java.awt.event.MouseMotionListener; +import java.util.Calendar; + +public abstract class CHDD implements MouseMotionListener,ActionListener{ + + private TextArea ta; + private String s = ""; + private String s7=""; + private String s8=""; + private Frame fr; + + + +} + + diff --git a/src/java2020spring/Test.java b/src/java2020spring/Test.java index fc09c195f566d0e707f5e8a2f05fd168069c73a7..e726402ba9439c1e8aaefa12bd753ddf2df272b6 100644 --- a/src/java2020spring/Test.java +++ b/src/java2020spring/Test.java @@ -1,10 +1,46 @@ package java2020spring; +import java.awt.Frame; +import java.awt.Menu; +import java.awt.MenuBar; +import java.awt.MenuItem; +import java.awt.TextArea; + public class Test { + Frame fr = new Frame("文本编辑器"); + TextArea ta = new TextArea(); + MenuBar m0 = new MenuBar(); + Menu m1 = new Menu("文件"); + Menu m2 = new Menu("编辑"); + Menu m3 = new Menu("帮助"); + Menu m4 = new Menu("工具栏"); + Menu m5 = new Menu("格式"); + Menu m6 = new Menu("查看"); + MenuItem mi1 = new MenuItem("保存"); + MenuItem mi2 = new MenuItem("新建"); + MenuItem mi3 = new MenuItem("退出"); + MenuItem mi4 = new MenuItem("查看帮助"); + MenuItem mi5 = new MenuItem("打开"); + MenuItem mi6 = new MenuItem("页面设置"); + MenuItem mi7 = new MenuItem("时间和日期"); + MenuItem mi8 = new MenuItem("复制"); + MenuItem mi9 = new MenuItem("粘贴"); + MenuItem mi10 = new MenuItem("剪切"); + MenuItem mi11 = new MenuItem("撤销"); + MenuItem mi12 = new MenuItem("删除"); + MenuItem mi13 = new MenuItem("Web工具"); + MenuItem mi14 = new MenuItem("绘图"); + MenuItem mi15 = new MenuItem("自定义"); + MenuItem mi16 = new MenuItem("统计"); + MenuItem mi17 = new MenuItem("另存为"); + MenuItem mi18 = new MenuItem("查找"); + MenuItem mi19 = new MenuItem("自动换行"); + MenuItem mi20 = new MenuItem("字体"); + MenuItem mi21 = new MenuItem("查看帮助"); + MenuItem mi22 = new MenuItem("关于记事本"); + MenuItem mi23 = new MenuItem("状态栏"); +} - public static void main(String[] args) { - System.out.println("Hello world!"); + - } -}