2024年10月java文本编辑器(求JAVA编写的文本编辑器)

 更新时间:2024-10-12

  ⑴java文本编辑器(求JAVA编写的文本编辑器

  ⑵删除privateMenuItemmiFont,miLowtoCapital,miCapitaltoLow,miEncrypt,miDisencrypt;//格式菜单项:字体privateMenuItemmiAboutNotepad;//帮助菜单项:关于记事本privateTextAreata;//文本区privateStringtempString;//临时字符串,用于存储需要复制粘贴的字符串privatebooleantextValueChanged=false;privateintid_font;//字体StringfileName=““;//上次保存后的文件名和地址//构造函数publiotepad(){//框架mainFrame=newFrame(“Notepadv.byLaunching“);mb=newMenuBar();ta=newTextArea(,);ta.setFont(newFont(“TimesNewRome“,Font.PLAIN,));ta.setBackground(newColor(,,));//菜单条mFile=newMenu(“File“);mEdit=newMenu(“Edit“);mFormat=newMenu(“Format“);mHelp=newMenu(“Help“);//“文件“miNew=newMenuItem(“New“);miOpen=newMenuItem(“Open“);miSave=newMenuItem(“Save“);miSaveAs=newMenuItem(“Saveas“);miExit=newMenuItem(“Exit“);//“编辑“miCut=newMenuItem(“Cut“);miCopy=newMenuItem(“Copy“);miPaste=newMenuItem(“Paste“);miDelete=newMenuItem(“Delete“);//“格式“miFont=newMenuItem(“Font“);miLowtoCapital=newMenuItem(“LowtoCapital“);miCapitaltoLow=newMenuItem(“CapitaltoLow“);miEncrypt=newMenuItem(“Encrypt“);miDisencrypt=newMenuItem(“Disencrypt“);//“帮助“miAboutNotepad=newMenuItem(“AboutNotepad“);//添加文件菜单项mFile.add(miNew);mFile.add(miOpen);mFile.add(miSave);mFile.add(miSaveAs);mFile.add(miExit);//添加编辑菜单项mEdit.add(miCut);mEdit.add(miCopy);mEdit.add(miPaste);mEdit.add(miDelete);//添加格式菜单项mFormat.add(miFont);mFormat.add(miLowtoCapital);mFormat.add(miCapitaltoLow);mFormat.add(miEncrypt);mFormat.add(miDisencrypt);//添加帮助菜单项mHelp.add(miAboutNotepad);//菜单条添加菜单mb.add(mFile);mb.add(mEdit);mb.add(mFormat);mb.add(mHelp);//框架添加菜单条mainFrame.setMenuBar(mb);//初始字符串赋为空tempString=““;//添加文本区mainFrame.add(ta,BorderLayout.CENTER);mainFrame.setSize(,);mainFrame.setLocation(,);//起始位置mainFrame.setResizable(true);//不可更改大小mainFrame.setVisible(true);//mainFrame.pack();//////////////////////////////////////////////////////////////////////////////////////////////////////////////////增加监视器////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////主框架mainFrame.addWindowListener(newWindowAdapter(){//关闭窗口publicvoidwindowClosing(WindowEvente){System.exit();}});//文本区ta.addKeyListener(newKeyAdapter(){publicvoidKeyTyped(KeyEvente){textValueChanged=true;//键盘按键按下即导致文本修改}});////////////////“文件“菜单:////////////////////////新建miNew.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){ta.replaceRange(““,,ta.getText().length());//清空文本区的内容fileName=““;//文件名清空}});//打开miOpen.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){FileDialogd=newFileDialog(mainFrame,“openfile“,FileDialog.LOAD);//打开文件对话框d.addWindowListener(newWindowAdapter(){//关闭文件对话框窗口publicvoidwindowClosing(WindowEventee){System.exit();}});d.setVisible(true);Filef=newFile(d.getDirectory()+d.getFile());//建立新文件fileName=d.getDirectory()+d.getFile();//得到文件名charch=newchar[(int)f.length()];///用此文件的长度建立一个字符数组try//异常处理{//读出数据,并存入字符数组ch中BufferedReaderbw=newBufferedReader(newFileReader(f));bw.read(ch);bw.close();}catch(FileNotFoundExceptionfe){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie){System.out.println(“IOerror“);System.exit();}Strings=newString(ch);ta.setText(s);//设置文本区为所打开文件的内容}});//保存miSave.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){if(fileName.equals(““)){//如果文件没有被保存过,即文件名为空FileDialogd=newFileDialog(mainFrame,“savefile“,FileDialog.SAVE);//保存文件对话框d.addWindowListener(newWindowAdapter(){//关闭文件对话框窗口publicvoidwindowClosing(WindowEventee){System.exit();}});d.setVisible(true);Strings=ta.getText();//得到所输入的文本内容try//异常处理{Filef=newFile(d.getDirectory()+d.getFile());//新建文件fileName=d.getDirectory()+d.getFile();//得到文件名BufferedWriterbw=newBufferedWriter(newFileWriter(f));//输入到文件中bw.write(s,,s.length());bw.close();}catch(FileNotFoundExceptionfe_){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie_){System.out.println(“IOerror“);System.exit();}}else//如果文件已经保存过{Strings=ta.getText();//得到所输入的文本内容try//异常处理{Filef=newFile(fileName);//新建文件BufferedWriterbw=newBufferedWriter(newFileWriter(f));//输入到文件中bw.write(s,,s.length());bw.close();}catch(FileNotFoundExceptionfe_){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie_){System.out.println(“IOerror“);System.exit();}}}});//另存为miSaveAs.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){FileDialogd=newFileDialog(mainFrame,“savefile“,FileDialog.SAVE);//保存文件对话框d.addWindowListener(newWindowAdapter(){//关闭文件对话框窗口publicvoidwindowClosing(WindowEventee){System.exit();}});d.setVisible(true);Strings=ta.getText();//得到所输入的文本内容try//异常处理{Filef=newFile(d.getDirectory()+d.getFile());//新建文件BufferedWriterbw=newBufferedWriter(newFileWriter(f));//输入到文件中bw.write(s,,s.length());bw.close();}catch(FileNotFoundExceptionfe_){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie_){System.out.println(“IOerror“);System.exit();}}});//退出miExit.addActionListener(newActionListener(){///退出程序publicvoidactionPerformed(ActionEvente){System.exit();}});////////////////“编辑“菜单://////////////////////剪切miCut.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){tempString=ta.getSelectedText();///得到要复制的内容,暂存在tempString中StringBuffertmp=newStringBuffer(ta.getText());//临时存储文本intstart=ta.getSelectionStart();//得到要删除的字符串的起始位置intlen=ta.getSelectedText().length();//得到要删除的字符串的长度tmp.delete(start,start+len);///删除所选中的字符串ta.setText(tmp.toString());//用新文本设置原文本}});//复制miCopy.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){tempString=ta.getSelectedText();///得到要复制的内容,暂存在tempString中}});//粘贴miPaste.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){StringBuffertmp=newStringBuffer(ta.getText());//临时存储文本intstart=ta.getSelectionStart();//得到要粘贴的位置tmp.insert(start,tempString);//查入要粘贴的内容ta.setText(tmp.toString());//用新文本设置原文本}});//删除miDelete.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){StringBuffertmp=newStringBuffer(ta.getText());//临时存储文本intstart=ta.getSelectionStart();//得到要删除的字符串的起始位置intlen=ta.getSelectedText().length();//得到要删除的字符串的长度tmp.delete(start,start+len);///删除所选中的字符串ta.setText(tmp.toString());//用新文本设置原文本}});////////////////“格式“菜单://////////////////////字体miFont.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){finalDialogd=newDialog(mainFrame,“Font“);//新建对话框d.setLocation(,);//起始位置d.setLayout(newBorderLayout());//表格布局//////////////////////////上部分面板Labell_font=newLabel(“font“);//font标签Panelp_=newPanel();p_.add(l_font);p_.setVisible(true);//////////////////////////中部分面板Listfont_list=newList(,false);//字体列表//添加字体项目font_list.add(“Plain“);///普通字体font_list.add(“Bold“);///粗体font_list.add(“Italic“);//斜体font_list.addItemListener(newMyItemListener_font());//字体增加监视器Panelp_=newPanel();p_.add(font_list);p_.setVisible(true);//////////////////////////下部分面板Buttonok=newButton(“OK“);ok.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){d.dispose();}});ok.setSize(newDimension(,));Panelp_=newPanel();//下部分面板p_.add(ok);p_.setVisible(true);//添加三个面板d.add(p_,BorderLayout.NORTH);d.add(p_,BorderLayout.CENTER);d.add(p_,BorderLayout.SOUTH);d.pack();d.addWindowListener(newWindowAdapter(){//关闭对话框窗口publicvoidwindowClosing(WindowEventee){d.dispose();}});d.setVisible(true);}});//小写字母转大写miLowtoCapital.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if((int)s.charAt(i)》=&&(int)s.charAt(i)《=){temp.append((char)((int)s.charAt(i)-));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});//大写字母转小写miCapitaltoLow.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if((int)s.charAt(i)》=&&(int)s.charAt(i)《=){temp.append((char)((int)s.charAt(i)+));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});//加密miEncrypt.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if(s.charAt(i)》=&&s.charAt(i)《=){if(i%==){temp.append((char)(s.charAt(i)+));}elsetemp.append((char)(s.charAt(i)-));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});//解密miDisencrypt.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if(s.charAt(i)》=&&s.charAt(i)《=){if(i%==){temp.append((char)(s.charAt(i)-));}elsetemp.append((char)(s.charAt(i)+));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});////////////////“帮助“菜单://////////////////////关于记事本miAboutNotepad.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){finalDialogd=newDialog(mainFrame,“AboutNotepad“);//新建对话框TextAreat=newTextArea(“

  ⑶weletouseNotepad“+“

  ⑷“+“CopyrightLaunching“+“

  ⑸“+“freesoftware“+“

  ⑹“+“v.“);//添加标签t.setSize(newDimension(,));t.setEditable(false);d.setResizable(false);//不可调整大小d.add(t);d.pack();d.addWindowListener(newWindowAdapter(){//关闭对话框窗口publicvoidwindowClosing(WindowEventee){d.dispose();}});d.setLocation(,);//起始位置d.setVisible(true);}});}classMyItemListener_fontimplementsItemListener{//字体监听器publicvoiditemStateChanged(ItemEvente){id_font=((java.awt.List)e.getSource()).getSelectedIndex();switch(id_font){case:{ta.setFont(newFont(“TimesNewRoman“,Font.PLAIN,ta.getFont().getSize()));//普通文字break;}case:{ta.setFont(newFont(“TimesNewRoman“,Font.BOLD,ta.getFont().getSize()));//粗体文字break;}case:{ta.setFont(newFont(“TimesNewRoman“,Font.ITALIC,ta.getFont().getSize()));//斜体文字break;}}}}/////////////////////////////////////////主函数///////////////////////////////////////////////////publicstaticvoidmain(Stringarg){Notepadtest=newNotepad();///创建记事本}//////////////////////////////////////////////////////////////////////////////////////////////////}如何用Java编写文本编辑器packagemyclass;importjava.awt.*;importjava.awt.event.*;importjava.io.*;importjavax.swing.*;import.sun.tools.hat.internal.parser.Reader;publilassMyTxtextendsJFrameimplementsActionListener{JTextAreata;JMenuItemopen,save,myexit,open,save;JMenuItemcopy,palse;JMenuBarmb;JPopupMenupopm;JScrollPanesp;publicvoidcreatemenu(){mb=newJMenuBar();JMenum=newJMenu(“文件“);JMenum=newJMenu(“编辑“);JMenum=newJMenu(“字体“);mb.add(m);mb.add(m);m.add(m);open=newJMenuItem(“打开“);//ImageIconii=newImageIcon(“a.gif“);//open.setIcon(newImageIcon(“b.gif“));open.addActionListener(this);save=newJMenuItem(“保存“);save.addActionListener(this);myexit=newJMenuItem(“退出“);myexit.addActionListener(this);m.add(open);m.add(save);m.add(myexit);copy=newJMenuItem(“复制“);palse=newJMenuItem(“粘贴“);m.add(copy);m.add(palse);popm=newJPopupMenu();open=newJMenuItem(“打开“);open.addActionListener(this);save=newJMenuItem(“保存“);save.addActionListener(this);popm.add(open);popm.add(save);ta.add(popm);ta.addMouseListener(newMyMouseEvent(this));}classMyMouseEventextendsMouseAdapter{MyTxtmyparentFrame;MyMouseEvent(MyTxtm){myparentFrame=m;}publicvoidmouseReleased(MouseEvente){if(e.isPopupTrigger())myparentFrame.popm.show((ponent)e.getSource(),e.getX(),e.getY());}}publicMyTxt(){addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){dispose();System.exit();}});ta=newJTextArea(,);add(ta,BorderLayout.CENTER);Panelp=newPanel();add(p,BorderLayout.SOUTH);setVisible(true);setSize(,);//pack();Dimensiondim=Toolkit.getDefaultToolkit().getScreenSize();//获取屏幕大小intw=getSize().width;inth=getSize().height;intx=(dim.width-w)/;inty=(dim.height-h)/;setLocation(x,y);createmenu();setJMenuBar(mb);sp=newJScrollPane(ta);getContentPane().add(sp);}publicvoidactionPerformed(ActionEvente){if(e.getActionmand()==“打开“)try{openfile();}catch(IOExceptionex){}if(e.getActionmand()==“保存“){try{savefile();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}if(e.getActionmand()==“退出“){dispose();System.exit();}}publicvoidsavefile()throwsIOException{FileDialogfd=newFileDialog(this,“保存“,FileDialog.SAVE);fd.setVisible(true);FileWriterfw=newFileWriter(fd.getDirectory()+fd.getFile());for(inti=;i《ta.getText().length();i++){fw.write(ta.getText().charAt(i));}fw.close();}publicvoidopenfile()throwsIOException{FileDialogfd=newFileDialog(this,“打开“,FileDialog.LOAD);fd.setVisible(true);FileReaderfr=newFileReader(fd.getDirectory()+fd.getFile());intn=;introw=;while((n=fr.read())!=-){ta.append(““+(char)n);row--;if(row==){ta.append(“

  ⑺“);row=;}}fr.close();}publicstaticvoidmain(Stringargs){MyTxttw=newMyTxt();}}“超文本”的含义是什么WWW上的每个网页都对应一个文件,这些包含链接的文件被称为超文本文件,超文本文件中多了一些对文件内容的注释,求JAVA编写的文本编辑器importjava.awt.*;importjava.awt.event.*;importjava.io.*;publilassNotepad/*implementsActionListener,MouseListener,MouseMotionListener,WindowListener,ItemListener,KeyListener,TextListener*/{//成员变量privateFramemainFrame;//主框架privateMenuBarmb;//菜单条privateMenumFile,mEdit,mFormat,mHelp;//菜单:文件,超文本文件的概念出现在多媒体技术迅速发展之前,麻烦高手推荐几款比较适合初学者编写JAVA程序的文本编辑器notepad++//一个支持多种语言的文本编辑器,链接的内容已经从原来文本中的一个词或词组。

  ⑻求JAVA编写的文本编辑器

  ⑼importjava.awt.*;importjava.awt.event.*;importjava.io.*;publilassNotepad/*implementsActionListener,MouseListener,MouseMotionListener,WindowListener,ItemListener,KeyListener,TextListener*/{//成员变量privateFramemainFrame;//主框架privateMenuBarmb;//菜单条privateMenumFile,mEdit,mFormat,mHelp;//菜单:文件,编辑,格式,帮助privateMenuItemmiNew,miOpen,miSave,miSaveAs,miExit;//文件菜单项:新建,打开,保存,另存为,退出privateMenuItemmiCut,miCopy,miPaste,miDelete;//编辑菜单项:剪切,复制,粘贴,删除privateMenuItemmiFont,miLowtoCapital,miCapitaltoLow,miEncrypt,miDisencrypt;//格式菜单项:字体privateMenuItemmiAboutNotepad;//帮助菜单项:关于记事本privateTextAreata;//文本区privateStringtempString;//临时字符串,用于存储需要复制粘贴的字符串privatebooleantextValueChanged=false;privateintid_font;//字体StringfileName=““;//上次保存后的文件名和地址//构造函数publiotepad(){//框架mainFrame=newFrame(“Notepadv.byLaunching“);mb=newMenuBar();ta=newTextArea(,);ta.setFont(newFont(“TimesNewRome“,Font.PLAIN,));ta.setBackground(newColor(,,));//菜单条mFile=newMenu(“File“);mEdit=newMenu(“Edit“);mFormat=newMenu(“Format“);mHelp=newMenu(“Help“);//“文件“miNew=newMenuItem(“New“);miOpen=newMenuItem(“Open“);miSave=newMenuItem(“Save“);miSaveAs=newMenuItem(“Saveas“);miExit=newMenuItem(“Exit“);//“编辑“miCut=newMenuItem(“Cut“);miCopy=newMenuItem(“Copy“);miPaste=newMenuItem(“Paste“);miDelete=newMenuItem(“Delete“);//“格式“miFont=newMenuItem(“Font“);miLowtoCapital=newMenuItem(“LowtoCapital“);miCapitaltoLow=newMenuItem(“CapitaltoLow“);miEncrypt=newMenuItem(“Encrypt“);miDisencrypt=newMenuItem(“Disencrypt“);//“帮助“miAboutNotepad=newMenuItem(“AboutNotepad“);//添加文件菜单项mFile.add(miNew);mFile.add(miOpen);mFile.add(miSave);mFile.add(miSaveAs);mFile.add(miExit);//添加编辑菜单项mEdit.add(miCut);mEdit.add(miCopy);mEdit.add(miPaste);mEdit.add(miDelete);//添加格式菜单项mFormat.add(miFont);mFormat.add(miLowtoCapital);mFormat.add(miCapitaltoLow);mFormat.add(miEncrypt);mFormat.add(miDisencrypt);//添加帮助菜单项mHelp.add(miAboutNotepad);//菜单条添加菜单mb.add(mFile);mb.add(mEdit);mb.add(mFormat);mb.add(mHelp);//框架添加菜单条mainFrame.setMenuBar(mb);//初始字符串赋为空tempString=““;//添加文本区mainFrame.add(ta,BorderLayout.CENTER);mainFrame.setSize(,);mainFrame.setLocation(,);//起始位置mainFrame.setResizable(true);//不可更改大小mainFrame.setVisible(true);//mainFrame.pack();//////////////////////////////////////////////////////////////////////////////////////////////////////////////////增加监视器////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////主框架mainFrame.addWindowListener(newWindowAdapter(){//关闭窗口publicvoidwindowClosing(WindowEvente){System.exit();}});//文本区ta.addKeyListener(newKeyAdapter(){publicvoidKeyTyped(KeyEvente){textValueChanged=true;//键盘按键按下即导致文本修改}});////////////////“文件“菜单:////////////////////////新建miNew.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){ta.replaceRange(““,,ta.getText().length());//清空文本区的内容fileName=““;//文件名清空}});//打开miOpen.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){FileDialogd=newFileDialog(mainFrame,“openfile“,FileDialog.LOAD);//打开文件对话框d.addWindowListener(newWindowAdapter(){//关闭文件对话框窗口publicvoidwindowClosing(WindowEventee){System.exit();}});d.setVisible(true);Filef=newFile(d.getDirectory()+d.getFile());//建立新文件fileName=d.getDirectory()+d.getFile();//得到文件名charch=newchar[(int)f.length()];///用此文件的长度建立一个字符数组try//异常处理{//读出数据,并存入字符数组ch中BufferedReaderbw=newBufferedReader(newFileReader(f));bw.read(ch);bw.close();}catch(FileNotFoundExceptionfe){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie){System.out.println(“IOerror“);System.exit();}Strings=newString(ch);ta.setText(s);//设置文本区为所打开文件的内容}});//保存miSave.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){if(fileName.equals(““)){//如果文件没有被保存过,即文件名为空FileDialogd=newFileDialog(mainFrame,“savefile“,FileDialog.SAVE);//保存文件对话框d.addWindowListener(newWindowAdapter(){//关闭文件对话框窗口publicvoidwindowClosing(WindowEventee){System.exit();}});d.setVisible(true);Strings=ta.getText();//得到所输入的文本内容try//异常处理{Filef=newFile(d.getDirectory()+d.getFile());//新建文件fileName=d.getDirectory()+d.getFile();//得到文件名BufferedWriterbw=newBufferedWriter(newFileWriter(f));//输入到文件中bw.write(s,,s.length());bw.close();}catch(FileNotFoundExceptionfe_){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie_){System.out.println(“IOerror“);System.exit();}}else//如果文件已经保存过{Strings=ta.getText();//得到所输入的文本内容try//异常处理{Filef=newFile(fileName);//新建文件BufferedWriterbw=newBufferedWriter(newFileWriter(f));//输入到文件中bw.write(s,,s.length());bw.close();}catch(FileNotFoundExceptionfe_){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie_){System.out.println(“IOerror“);System.exit();}}}});//另存为miSaveAs.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){FileDialogd=newFileDialog(mainFrame,“savefile“,FileDialog.SAVE);//保存文件对话框d.addWindowListener(newWindowAdapter(){//关闭文件对话框窗口publicvoidwindowClosing(WindowEventee){System.exit();}});d.setVisible(true);Strings=ta.getText();//得到所输入的文本内容try//异常处理{Filef=newFile(d.getDirectory()+d.getFile());//新建文件BufferedWriterbw=newBufferedWriter(newFileWriter(f));//输入到文件中bw.write(s,,s.length());bw.close();}catch(FileNotFoundExceptionfe_){System.out.println(“filenotfound“);System.exit();}catch(IOExceptionie_){System.out.println(“IOerror“);System.exit();}}});//退出miExit.addActionListener(newActionListener(){///退出程序publicvoidactionPerformed(ActionEvente){System.exit();}});////////////////“编辑“菜单://////////////////////剪切miCut.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){tempString=ta.getSelectedText();///得到要复制的内容,暂存在tempString中StringBuffertmp=newStringBuffer(ta.getText());//临时存储文本intstart=ta.getSelectionStart();//得到要删除的字符串的起始位置intlen=ta.getSelectedText().length();//得到要删除的字符串的长度tmp.delete(start,start+len);///删除所选中的字符串ta.setText(tmp.toString());//用新文本设置原文本}});//复制miCopy.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){tempString=ta.getSelectedText();///得到要复制的内容,暂存在tempString中}});//粘贴miPaste.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){StringBuffertmp=newStringBuffer(ta.getText());//临时存储文本intstart=ta.getSelectionStart();//得到要粘贴的位置tmp.insert(start,tempString);//查入要粘贴的内容ta.setText(tmp.toString());//用新文本设置原文本}});//删除miDelete.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){StringBuffertmp=newStringBuffer(ta.getText());//临时存储文本intstart=ta.getSelectionStart();//得到要删除的字符串的起始位置intlen=ta.getSelectedText().length();//得到要删除的字符串的长度tmp.delete(start,start+len);///删除所选中的字符串ta.setText(tmp.toString());//用新文本设置原文本}});////////////////“格式“菜单://////////////////////字体miFont.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){finalDialogd=newDialog(mainFrame,“Font“);//新建对话框d.setLocation(,);//起始位置d.setLayout(newBorderLayout());//表格布局//////////////////////////上部分面板Labell_font=newLabel(“font“);//font标签Panelp_=newPanel();p_.add(l_font);p_.setVisible(true);//////////////////////////中部分面板Listfont_list=newList(,false);//字体列表//添加字体项目font_list.add(“Plain“);///普通字体font_list.add(“Bold“);///粗体font_list.add(“Italic“);//斜体font_list.addItemListener(newMyItemListener_font());//字体增加监视器Panelp_=newPanel();p_.add(font_list);p_.setVisible(true);//////////////////////////下部分面板Buttonok=newButton(“OK“);ok.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){d.dispose();}});ok.setSize(newDimension(,));Panelp_=newPanel();//下部分面板p_.add(ok);p_.setVisible(true);//添加三个面板d.add(p_,BorderLayout.NORTH);d.add(p_,BorderLayout.CENTER);d.add(p_,BorderLayout.SOUTH);d.pack();d.addWindowListener(newWindowAdapter(){//关闭对话框窗口publicvoidwindowClosing(WindowEventee){d.dispose();}});d.setVisible(true);}});//小写字母转大写miLowtoCapital.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if((int)s.charAt(i)》=&&(int)s.charAt(i)《=){temp.append((char)((int)s.charAt(i)-));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});//大写字母转小写miCapitaltoLow.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if((int)s.charAt(i)》=&&(int)s.charAt(i)《=){temp.append((char)((int)s.charAt(i)+));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});//加密miEncrypt.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if(s.charAt(i)》=&&s.charAt(i)《=){if(i%==){temp.append((char)(s.charAt(i)+));}elsetemp.append((char)(s.charAt(i)-));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});//解密miDisencrypt.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Strings=ta.getText();//得到所输入的文本内容StringBuffertemp=newStringBuffer(““);for(inti=;i《s.length();i++){if(s.charAt(i)》=&&s.charAt(i)《=){if(i%==){temp.append((char)(s.charAt(i)-));}elsetemp.append((char)(s.charAt(i)+));}elsetemp.append(s.charAt(i));}s=newString(temp);ta.setText(s);}});////////////////“帮助“菜单://////////////////////关于记事本miAboutNotepad.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){finalDialogd=newDialog(mainFrame,“AboutNotepad“);//新建对话框TextAreat=newTextArea(“

  ⑽weletouseNotepad“+“

  ⑾“+“CopyrightLaunching“+“

  ⑿“+“freesoftware“+“

  ⒀“+“v.“);//添加标签t.setSize(newDimension(,));t.setEditable(false);d.setResizable(false);//不可调整大小d.add(t);d.pack();d.addWindowListener(newWindowAdapter(){//关闭对话框窗口publicvoidwindowClosing(WindowEventee){d.dispose();}});d.setLocation(,);//起始位置d.setVisible(true);}});}classMyItemListener_fontimplementsItemListener{//字体监听器publicvoiditemStateChanged(ItemEvente){id_font=((java.awt.List)e.getSource()).getSelectedIndex();switch(id_font){case:{ta.setFont(newFont(“TimesNewRoman“,Font.PLAIN,ta.getFont().getSize()));//普通文字break;}case:{ta.setFont(newFont(“TimesNewRoman“,Font.BOLD,ta.getFont().getSize()));//粗体文字break;}case:{ta.setFont(newFont(“TimesNewRoman“,Font.ITALIC,ta.getFont().getSize()));//斜体文字break;}}}}/////////////////////////////////////////主函数///////////////////////////////////////////////////publicstaticvoidmain(Stringarg){Notepadtest=newNotepad();///创建记事本}//////////////////////////////////////////////////////////////////////////////////////////////////}

  ⒁如何用Java编写文本编辑器

  ⒂packagemyclass;importjava.awt.*;importjava.awt.event.*;importjava.io.*;importjavax.swing.*;import.sun.tools.hat.internal.parser.Reader;publilassMyTxtextendsJFrameimplementsActionListener{JTextAreata;JMenuItemopen,save,myexit,open,save;JMenuItemcopy,palse;JMenuBarmb;JPopupMenupopm;JScrollPanesp;publicvoidcreatemenu(){mb=newJMenuBar();JMenum=newJMenu(“文件“);JMenum=newJMenu(“编辑“);JMenum=newJMenu(“字体“);mb.add(m);mb.add(m);m.add(m);open=newJMenuItem(“打开“);//ImageIconii=newImageIcon(“a.gif“);//open.setIcon(newImageIcon(“b.gif“));open.addActionListener(this);save=newJMenuItem(“保存“);save.addActionListener(this);myexit=newJMenuItem(“退出“);myexit.addActionListener(this);m.add(open);m.add(save);m.add(myexit);copy=newJMenuItem(“复制“);palse=newJMenuItem(“粘贴“);m.add(copy);m.add(palse);popm=newJPopupMenu();open=newJMenuItem(“打开“);open.addActionListener(this);save=newJMenuItem(“保存“);save.addActionListener(this);popm.add(open);popm.add(save);ta.add(popm);ta.addMouseListener(newMyMouseEvent(this));}classMyMouseEventextendsMouseAdapter{MyTxtmyparentFrame;MyMouseEvent(MyTxtm){myparentFrame=m;}publicvoidmouseReleased(MouseEvente){if(e.isPopupTrigger())myparentFrame.popm.show((ponent)e.getSource(),e.getX(),e.getY());}}publicMyTxt(){addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){dispose();System.exit();}});ta=newJTextArea(,);add(ta,BorderLayout.CENTER);Panelp=newPanel();add(p,BorderLayout.SOUTH);setVisible(true);setSize(,);//pack();Dimensiondim=Toolkit.getDefaultToolkit().getScreenSize();//获取屏幕大小intw=getSize().width;inth=getSize().height;intx=(dim.width-w)/;inty=(dim.height-h)/;setLocation(x,y);createmenu();setJMenuBar(mb);sp=newJScrollPane(ta);getContentPane().add(sp);}publicvoidactionPerformed(ActionEvente){if(e.getActionmand()==“打开“)try{openfile();}catch(IOExceptionex){}if(e.getActionmand()==“保存“){try{savefile();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}if(e.getActionmand()==“退出“){dispose();System.exit();}}publicvoidsavefile()throwsIOException{FileDialogfd=newFileDialog(this,“保存“,FileDialog.SAVE);fd.setVisible(true);FileWriterfw=newFileWriter(fd.getDirectory()+fd.getFile());for(inti=;i《ta.getText().length();i++){fw.write(ta.getText().charAt(i));}fw.close();}publicvoidopenfile()throwsIOException{FileDialogfd=newFileDialog(this,“打开“,FileDialog.LOAD);fd.setVisible(true);FileReaderfr=newFileReader(fd.getDirectory()+fd.getFile());intn=;introw=;while((n=fr.read())!=-){ta.append(““+(char)n);row--;if(row==){ta.append(“

  ⒃“);row=;}}fr.close();}publicstaticvoidmain(Stringargs){MyTxttw=newMyTxt();}}

  ⒄“超文本”的含义是什么

  ⒅WWW上的每个网页都对应一个文件。我们浏览一个页面,要先把页面所对应的文件从提供这个文件的计算机里,通过Inter传送到我们自己的计算机中,再由WWW浏览器翻译成为我们见到的有文字、有图形甚至有声音的页面。这些页面对应的文件不再是普通的“文本文件”,文件中除包含文字信息外,还包括了一些具体的链接。这些包含链接的文件被称为超文本文件。和普通文本相比,超文本文件中多了一些对文件内容的注释,这些注释表明了当前文字显示的位置、颜色等信息,更重要的是,在有些注释中包含了对用户计算机应做出何种反应的说明,这些注释的内容经过浏览器的翻译后就成了不同的操作。为了使各种不同类型的WWW服务器都能正确地认识和执行,超文本文件要遵从一个严格的标准,这个标准就是超文本标识语言(HTML)。我们也可以利用这种语言来编写超文本文件,在Inter上制作自己的WWW的主页。超文本文件的概念出现在多媒体技术迅速发展之前,现在随着多媒体技术应用的日益广泛,超文本应该改叫“超多媒体”更加合适,链接的内容已经从原来文本中的一个词或词组,发展到现在一幅图象或是图象的一部分,通过链接得到的内容也更加广泛,可以是地球另一端的某台计算机上的图片、声音、音乐或者电影。但不管叫超文本还是叫做超多媒体,WWW上各网页都是通过链接来完成相互间的访问。而要使访问正常进行,必须使这些链接能够正确地指向所要访问的网页。这些工作是通过统一资源定位器(URL)来实现的。

  ⒆麻烦高手推荐几款比较适合初学者编写JAVA程序的文本编辑器

  ⒇notepad++//一个支持多种语言的文本编辑器,带有代码提示、语法高亮功能!editplus//支持Java语言。有语法高亮功能。没有代码提示!ultraedit//同editplus

您可能感兴趣的文章:

相关文章