ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:31.71KB ,
资源ID:3328367      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-3328367.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java语言写的简单文本编辑器.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Java语言写的简单文本编辑器.docx

1、Java语言写的简单文本编辑器import java.awt.*;import java.awt.event.*;import java.io.*;public class Notepad /*implements ActionListener , MouseListener , MouseMotionListener , WindowListener , ItemListener , KeyListener, TextListener */成员变量private Frame mainFrame;/主框架private MenuBar mb ; /菜单条private Menu mFile ,

2、 mEdit , mFormat , mHelp ; /菜单:文件,编辑,格式,帮助private MenuItem miNew , miOpen , miSave , miSaveAs , miExit ;/文件菜单项:新建,打开,保存,另存为,退出private MenuItem miCut , miCopy , miPaste , miDelete ;/编辑菜单项:剪切,复制,粘贴,删除private MenuItem miFont , miLowtoCapital, miCapitaltoLow ,miEncrypt , miDisencrypt;/格式菜单项:字体private Me

3、nuItem miAboutNotepad;/帮助菜单项:关于记事本private TextArea ta;/文本区private String tempString;/临时字符串,用于存储需要复制粘贴的字符串private boolean textValueChanged = false;private int id_font ;/字体 String fileName = ;/上次保存后的文件名和地址/构造函数public Notepad() /框架 mainFrame = new Frame (Notepad v0.99 by Launching); mb = new MenuBar ()

4、; ta = new TextArea (30 ,60); ta.setFont( new Font ( Times New Rome , Font.PLAIN , 15); ta.setBackground(new Color(0 , 250 , 200); /菜单条 mFile = new Menu ( File); mEdit = new Menu ( Edit); mFormat = new Menu (Format); mHelp = new Menu (Help); /文件 miNew = new MenuItem (New); miOpen = new MenuItem (Ope

5、n); miSave = new MenuItem (Save); miSaveAs = new MenuItem (Save as); miExit = new MenuItem (Exit); /编辑 miCut = new MenuItem (Cut); miCopy = new MenuItem (Copy); miPaste = new MenuItem (Paste); miDelete = new MenuItem (Delete); /格式 miFont = new MenuItem (Font); miLowtoCapital = new MenuItem(Low to Ca

6、pital); miCapitaltoLow = new MenuItem(Capital to Low); miEncrypt = new MenuItem(Encrypt); miDisencrypt = new MenuItem(Disencrypt); /帮助 miAboutNotepad = new MenuItem (About Notepad); /添加文件菜单项 mFile.add(miNew); mFile.add(miOpen); mFile.add(miSave); mFile.add(miSaveAs); mFile.add(miExit); /添加编辑菜单项 mEdi

7、t.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(mForm

8、at); mb.add(mHelp); /框架添加菜单条 mainFrame.setMenuBar( mb ); /初始字符串赋为空 tempString = ; /添加文本区 mainFrame.add(ta, BorderLayout.CENTER); mainFrame.setSize(800 , 500); mainFrame.setLocation( 100 ,100);/ 起始位置 mainFrame.setResizable(true);/不可更改大小 mainFrame.setVisible(true); /mainFrame.pack(); /增加监视器/ /主框架 main

9、Frame.addWindowListener(new WindowAdapter () /关闭窗口 public void windowClosing(WindowEvent e) System.exit(0); ); /文本区 ta.addKeyListener( new KeyAdapter() public void KeyTyped(KeyEvent e) textValueChanged = true ; /键盘按键按下即导致文本修改 ); /文件菜单:/ /新建 miNew.addActionListener( new ActionListener() public void a

10、ctionPerformed(ActionEvent e) ta.replaceRange(, 0 , ta.getText().length() ;/清空文本区的内容 fileName = ;/文件名清空 ); /打开 miOpen.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) FileDialog d=new FileDialog(mainFrame , open file , FileDialog.LOAD );/打开文件对话框 d.addWindowListener(

11、 new WindowAdapter() /关闭文件对话框窗口 public void windowClosing(WindowEvent ee) System.exit(0); ); d.setVisible(true); File f = new File( d.getDirectory()+d.getFile() ); /建立新文件 fileName = d.getDirectory()+d.getFile();/得到文件名 char ch = new char (int)f.length();/用此文件的长度建立一个字符数组 try/异常处理 /读出数据,并存入字符数组ch中 Buff

12、eredReader bw = new BufferedReader( new FileReader(f) ); bw.read(ch); bw.close(); catch( FileNotFoundException fe ) System.out.println(file not found); System.exit(0); catch( IOException ie) System.out.println(IO error); System.exit(0); String s =new String (ch); ta.setText(s);/设置文本区为所打开文件的内容 ); /保存

13、 miSave.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) if( fileName.equals() ) /如果文件没有被保存过,即文件名为空 FileDialog d=new FileDialog(mainFrame , save file , FileDialog.SAVE );/保存文件对话框 d.addWindowListener( new WindowAdapter() /关闭文件对话框窗口 public void windowClosing(WindowEve

14、nt ee) System.exit(0); ); d.setVisible(true); String s = ta.getText();/得到所输入的文本内容 try/异常处理 File f = new File( d.getDirectory()+d.getFile();/新建文件 fileName = d.getDirectory()+d.getFile();/得到文件名 BufferedWriter bw = new BufferedWriter( new FileWriter (f);/输入到文件中 bw.write(s , 0 , s.length(); bw.close();

15、catch(FileNotFoundException fe_) System.out.println(file not found); System.exit(0); catch( IOException ie_) System.out.println( IO error); System.exit(0); else /如果文件已经保存过 String s = ta.getText();/得到所输入的文本内容 try/异常处理 File f = new File( fileName );/新建文件 BufferedWriter bw = new BufferedWriter( new Fil

16、eWriter (f);/输入到文件中 bw.write(s , 0 , s.length(); bw.close(); catch(FileNotFoundException fe_) System.out.println(file not found); System.exit(0); catch( IOException ie_) System.out.println( IO error); System.exit(0); ); /另存为 miSaveAs.addActionListener( new ActionListener() public void actionPerforme

17、d(ActionEvent e) FileDialog d=new FileDialog(mainFrame , save file , FileDialog.SAVE );/保存文件对话框 d.addWindowListener( new WindowAdapter() /关闭文件对话框窗口 public void windowClosing(WindowEvent ee) System.exit(0); ); d.setVisible(true); String s = ta.getText();/得到所输入的文本内容 try/异常处理 File f = new File( d.getDi

18、rectory()+d.getFile();/新建文件 BufferedWriter bw = new BufferedWriter( new FileWriter (f);/输入到文件中 bw.write(s , 0 , s.length(); bw.close(); catch(FileNotFoundException fe_) System.out.println(file not found); System.exit(0); catch( IOException ie_) System.out.println( IO error); System.exit(0); ); /退出 m

19、iExit.addActionListener( new ActionListener() /退出程序 public void actionPerformed(ActionEvent e) System.exit(0); ); /编辑菜单:/ /剪切 miCut.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) tempString = ta.getSelectedText(); /得到要复制的内容,暂存在tempString中 StringBuffer tmp = new St

20、ringBuffer ( ta.getText();/临时存储文本 int start = ta.getSelectionStart(); /得到要删除的字符串的起始位置 int len = ta.getSelectedText().length(); /得到要删除的字符串的长度 tmp.delete( start , start+len); /删除所选中的字符串 ta.setText(tmp.toString();/用新文本设置原文本 ); /复制 miCopy.addActionListener( new ActionListener() public void actionPerform

21、ed(ActionEvent e) tempString = ta.getSelectedText(); /得到要复制的内容,暂存在tempString中 ); /粘贴 miPaste.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) StringBuffer tmp = new StringBuffer ( ta.getText();/临时存储文本 int start = ta.getSelectionStart(); /得到要粘贴的位置 tmp.insert(start ,

22、tempString);/查入要粘贴的内容 ta.setText(tmp.toString();/用新文本设置原文本 ); /删除 miDelete.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) StringBuffer tmp = new StringBuffer ( ta.getText();/临时存储文本 int start = ta.getSelectionStart(); /得到要删除的字符串的起始位置 int len = ta.getSelectedText().

23、length(); /得到要删除的字符串的长度 tmp.delete( start , start+len); /删除所选中的字符串 ta.setText(tmp.toString();/用新文本设置原文本 ); /格式菜单:/ /字体 miFont.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) final Dialog d = new Dialog ( mainFrame , Font);/新建对话框 d.setLocation( 250 ,250);/ 起始位置 d.se

24、tLayout( new BorderLayout();/表格布局 /上部分面板 Label l_font = new Label (font);/font标签 Panel p_1 = new Panel(); p_1.add(l_font); p_1.setVisible(true); /中部分面板 List font_list = new List (6 , false);/字体列表 /添加字体项目 font_list.add(Plain);/普通字体 font_list.add(Bold); /粗体 font_list.add(Italic);/斜体 font_list.addItemL

25、istener( new MyItemListener_font() ); /字体增加监视器 Panel p_2 = new Panel(); p_2.add(font_list); p_2.setVisible(true); /下部分面板 Button ok = new Button (OK); ok.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) d.dispose(); ); ok.setSize( new Dimension (20 , 5) ); Panel p_3

26、= new Panel();/下部分面板 p_3.add(ok); p_3.setVisible(true); /添加三个面板 d.add(p_1 , BorderLayout.NORTH); d.add(p_2 , BorderLayout.CENTER); d.add(p_3 , BorderLayout.SOUTH); d.pack(); d.addWindowListener( new WindowAdapter() /关闭对话框窗口 public void windowClosing(WindowEvent ee) d.dispose(); ); d.setVisible(true)

27、; ); /小写字母转大写 miLowtoCapital.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) String s = ta.getText();/得到所输入的文本内容 StringBuffer temp = new StringBuffer(); for(int i = 0 ; i=97 & (int)s.charAt(i)=122 ) temp.append(char)(int)s.charAt(i)-32); else temp.append(s.charAt(i); s = new String(temp); ta.setText(s); ); /大写字母转小写 miCapitaltoLow.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) String s = ta.getText();/得到所输入的文本内容 StringBuffer temp = new StringBuffer(); for(int i = 0 ;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2