




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目目 录录 第第1 1章章 引言引言 .1 1 1.11.1 背景背景 .1 1 1.21.2 课程设计内容课程设计内容 .1 1 第第2 2章章 记事本系统记事本系统 .3 3 2.12.1 记事本概述记事本概述 .3 2.22.2 记事本的任务及目的记事本的任务及目的.3 2.32.3 本章小结本章小结 .3 第第3 3章章 记事本的设计记事本的设计 .4 4 3.13.1 系统需求分析系统需求分析 .4 4 3.23.2 系统开发及运行环境系统开发及运行环境 .4 4 3.33.3记事本总体结构(流程图)记事本总体结构(流程图).5 5 3.43.4 记事本系统各模块介绍记事本系统各模块
2、介绍.5 5 3.53.5 本章小结本章小结 .6 6 第第4 4章章 系统的具体实现系统的具体实现 .7 7 4.14.1窗口设计窗口设计 .7 7 4.24.2程序功能设计及调试运行程序功能设计及调试运行 .8 8 4.2.14.2.1在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜 单项时,显示不同接口。单项时,显示不同接口。.9 9 4.2.24.2.2加入工具栏的功能键,通过工具栏实现对文本的基本操作。加入工具栏的功能键,通过工具栏实现对文本的基本操作。.1111 4.34.3 本章小结本章小
3、结 .1818 第第5 5章章 改进部分改进部分 .1919 5.15.1加登陆界面加登陆界面 .1919 5.1.15.1.1登陆界面设计登陆界面设计.1919 5.1.25.1.2 系统主界面系统主界面.2222 第第6 6章章 结束语结束语 .2424 附录附录 源代码源代码 .2727 第第1 1章章 引言引言 1.11.1 背景背景 在文本编辑器出现前,人们用打孔机把计算机文字打到穿孔卡片上。文字存 放于一个装着这样的薄卡片的盒子里,可以用读卡器来阅读它。 第一个文本编辑器是一种行编辑器,它运行在打字机型的终端上,这种编辑 器并不具备在窗口和屏幕中显示的功能。它包含了一些非常短的命令
4、(为了减少 打字量)。其中一个命令能够把文件的指定部分通过打字机打印出来。编辑光标 是想象中的一个插入点,通过特殊命令,可以把它移动到特定内容字符串所在的 行。随后,内容字符串又被扩展成正则表达式。如果想看到文件的变化,你需要 把它打印出来。相对于穿孔机来说,人们认为这种基于行的文本编辑器具有革命 性的进步。如果没有它,用户就需要把那些处理文本的命令打成专用的卡片,并 在编辑文件时使用这些卡片。 当带有显示屏的计算机终端出现后,基于显示屏的文本编辑器开始流行起来 。最早的全屏编辑器中,有一种叫做O26,它是于1967年为CDC 6000系列机器的操作控制台而作的。另外一个早期的全屏编辑器是vi
5、。vi诞生于 20世纪70年代,至今,它仍是Unix和Linux的标准编辑器。全屏编辑器对视频终 端的销售起到了促进的作用。 1.21.2 课程设计内容课程设计内容 记事本充分发挥文本编辑的优势,通过各种操作的有机结合,实现文本编辑 的各项所需功能。本程序的研究内容涉及记事本功能实现的全过程。 该记事 本功能包含以下内容: (1)打开文件,读取文件中的文本信息:对原有文件可实行打开操作,并 能读取文件中的内容,以方便对文件的查看,修改等任务。 (2)显示、编辑修改文本信息:记事本对文字信息的主要处理功能。可对相 关信息进行复制,剪切,粘贴等操作。 (3)实现新建、保存文本文件:新建文本可以使用
6、户写入新的信息,文件保 存后再次打开仍可获得原有信息。 第第2 2章章 记事本系统记事本系统 2.12.1 记事本概述记事本概述 记事本是一种只能处理纯文本的文件。由于多种格式源代码都是纯文本的,所以 记事本也就成为了使用最多的源代码编辑器。它只具备最基本的编辑功能,所以 体积小巧,启动快,占用内存低,容易使用。“记事本”的功能虽然连“写字板 ”都比不上,但它还是有它自己的独门绝技的。下面我们就来看看记事本吧。相 对于微软的Word来说“记事本”的功能确实是太单薄了,只有:新建,保存,打 印,查找,替换这几个功能。但是“记事本”却拥有一个Word不可能拥有的优点 :打开速度快,文件小。我相信对
7、于这一点大家一定是深有感触地,一点就打开 ;同样的文本文件用Word保存和用记事本保存的文件大小就大不相同,所以对于 大小在64KB以下的纯文本的保存最好还是采用记事本。记事本另一项不可取代的 功能是:可以保存无格式文件。你可以把记事本编辑的文件保存为:“.html” , “.java”,“.asp”等等任意格式。这使得“记事本”又找到了一个新的用途 :作为程序语言的编辑器。翻开任何一本介绍一门编程语言的入门教材,里面都 会建议学生在记事本中编写源程序。记事本使用的一个老窍门,在记事本文件的 开头输入:“.LOG”之后你每次打开这个文件就会在自动的纪录下文本打开的时 间。 2.22.2 记事本
8、的任务及目的记事本的任务及目的 打开计算本窗口,在编辑区进行文本的输入,可以使用剪切、拷贝、粘贴等功能 键,当文本输入完毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开 “保存”窗口,选择保存文件的根目录进行保存。当需要关闭窗口时可通过“文 件”菜单下的“退出系统”选项,或者选择“工具栏”中的“退出系统”按钮, 也可以直接点击窗口右上角的关闭图标进行关闭。 2.32.3 本章小结本章小结 记事本是一种只能处理纯文本的文件。可以通过菜单栏和工具栏实现以下功能: 如文件的新建,打开,保存和退出;对文件的编辑,如复制,剪切,粘贴;以及 帮助菜单;执行完操作后,能够顺利关闭记事本。 第第3 3章
9、章 记事本的设计记事本的设计 这一章时进销存管理系统的设计,从系统需求分析开始,介绍开发环境和用 到的开发工具,系统主要的功能设计,系统的数据流程图。 3.13.1 系统需求分析系统需求分析 记事本的设计目标为: 打开计算本窗口,在编辑区进行文本的输入,可以使用剪切、拷贝、粘贴等功能 键,当文本输入完毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开 “保存”窗口,选择保存文件的根目录进行保存。当需要关闭窗口时可通过“文 件”菜单下的“退出系统”选项,或者选择“工具栏”中的“退出系统”按钮, 也可以直接点击窗口右上角的关闭图标进行关闭。 3.23.2记事本总体结构记事本总体结构(流程图)(
10、流程图) 图图3.13.1 系统功能结构图系统功能结构图 3.33.3 记事本系统各模块介绍记事本系统各模块介绍 系统各功能模块实现的功能为: 新建记事本:在文件的下拉菜单中点击新建文本或单击工具栏中的新建文本 ,将文本刷新。 打开原有的记事本:在文件的下拉菜单中点击打开文本或单击工具栏中的打 开文本,再选中原有的记事本,单击打开按钮,便将原有文本打开。 拷贝:先选中需复制的文本,在编辑的下拉菜单中点击拷贝或单击工具栏中 的拷贝,便将所选文本复制了。 粘贴:在编辑的下拉菜单中点击粘贴或单击工具栏中的粘贴,便将所复制的 文本粘贴到需粘贴的地方。 剪贴:先选中需剪贴的文本,在编辑的下拉菜单中点击剪
11、贴或单击工具栏中 的剪贴,便将所选文本剪贴了。 保存:在文件的下拉菜单中点击保存文本或单击工具栏中的保存文本,便将 改变的文本保存好。 退出系统:在文件的下拉菜单中点击退出系统或单击工具栏中的退出系统, 或直接点击状态栏中的,从而关闭文本。 3.43.4 本章小结本章小结 本章介绍了该记事本的运行环境,以及各功能的体现。 第第4 4章章 系统的具体实现系统的具体实现 界面是系统之间最直接的交互界面,界面的友好性体现了软件设计的质量, 并在很大程度上决定了软件是否成功。 4.14.1窗口设计窗口设计 在主接口中设计一个EditorDemo容器继承自JFrame,并在其中加入菜单栏、工具 栏和一个
12、文本域控件。 public class EditorDemo extends JFrame JTextPane textPane = new JTextPane(); /创建文本窗格,编辑窗口 JFileChooser filechooser = new JFileChooser(); /文件选择器 setJMenuBar(createJMenuBar(actions); /设置菜单栏 Container container = getContentPane(); /得到容器 container.add(createJToolBar(actions), BorderLayout.NORTH);
13、 /工具栏 container.add(textPane, BorderLayout.CENTER); /增加文本窗格 窗口设计流程图窗口设计流程图: 设计一个容器继 承自JFrame 创建文本窗格 ,编辑窗口 创建文件选择器 设置菜单栏 得到容器 添加工具栏 添加文本窗格 图图4.14.1 窗口模块框图窗口模块框图 4.24.2程序功能设计及调试运行程序功能设计及调试运行 利用JSP“一次编写,各处运行”的编程优点,按功能模块结构设计菜单,布置各 明细模块工作界面,编写各个模块的程序代码,进行编译连接运行,经过反复调 试修改,以达到系统功能要求。这个过程具有大量的工作量,应仔细对每个程序 细
14、节进行分析思考、编写程序并调试,做到程序简洁清楚,尽量避免可能潜在的 程序错误,并在必要的地方加以注释,以便于程序阅读和修改。 4.2.4.2.1 1在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作 功能。点击不同菜单项时,显示不同接口。功能。点击不同菜单项时,显示不同接口。 部分代码部分代码: private JMenuBar createJMenuBar(Action actions) /创建菜单栏 JMenuBar menubar = new JMenuBar(); /实例化菜单栏 JMenu menuFile = new JM
15、enu(文件(F); /实例化菜单 JMenu menuEdit = new JMenu(编辑(E); JMenu menuFormat = new JMenu(格式(O); JMenu menuFind = new JMenu(查找(V); JMenu menuAbout = new JMenu(帮助(H); menuFile.add(new JMenuItem(actions0); /增加新菜单项 menuFile.add(new JMenuItem(actions1); menuFile.add(new JMenuItem(actions2); menuFile.addSeparator
16、(); menuFile.add(new JMenuItem(actions7); menuEdit.add(new JMenuItem(actions3); menuEdit.add(new JMenuItem(actions4); menuEdit.add(new JMenuItem(actions5); menuAbout.add(new JMenuItem(actions6); menubar.add(menuFile); /增加菜单 menubar.add(menuEdit); menubar.add(menuFormat); menubar.add(menuFind); menub
17、ar.add(menuAbout); return menubar; /返回菜单栏 实现对文件的操作功能流程图:实现对文件的操作功能流程图: 创建菜单栏 实例化菜单栏 增加新菜单项 添加菜单 返回菜单栏 图图4.24.2 实现操作功能框图实现操作功能框图 如下图: 图图4.2.14.2.1 文件菜单功能生成界面文件菜单功能生成界面 图图4.2.24.2.2编辑菜单功能生成界面编辑菜单功能生成界面 图图4.2.34.2.3 帮助菜单功能生成界面帮助菜单功能生成界面 4.2.24.2.2加入工具栏的功能键,通过工具栏实现对文本的基本操作。加入工具栏的功能键,通过工具栏实现对文本的基本操作。 关键代
18、码关键代码: Action actions = /Action数组,各种操作命令 new NewAction(), new OpenAction(), new SaveAction(), new CutAction(), new CopyAction(), new PasteAction(), new AboutAction(), new ExitAction(), private JToolBar createJToolBar(Action actions) /创建工具条 JToolBar toolBar = new JToolBar(); /实例化工具条 JButton bt = new
19、JButton(actionsi); /实例化新的按钮 toolBar.add(bt); /增加按钮到工具栏 如图所示: 4.2.34.2.3对每个菜单项进行注册监听。点击不同功能键时,实现不同的对每个菜单项进行注册监听。点击不同功能键时,实现不同的 操作,显示不同的窗口。操作,显示不同的窗口。 主要实现方法代码如下主要实现方法代码如下: class NewAction extends AbstractAction /实现新建文件命令功能 public NewAction() super(新建文本); public void actionPerformed(ActionEvent e) tex
20、tPane.setDocument(new DefaultStyledDocument(); /清空文档 class OpenAction extends AbstractAction /实现打开文件命令功能 public OpenAction() super(打开文本); public void actionPerformed(ActionEvent e) int i = filechooser.showOpenDialog(EditorDemo.this); /显示打开文件对话框 if (i = JFileChooser.APPROVE_OPTION) /点击对话框中打开选项 File f
21、 = filechooser.getSelectedFile(); /得到选择的文件 try InputStream is = new FileInputStream(f); /得到文件输入流 textPane.read(is, d); /读入文件到文本窗格 catch (Exception ex) ex.printStackTrace(); /输出出错信息 如下图: 图图4.2.44.2.4 打开文件生成界面打开文件生成界面 class SaveAction extends AbstractAction /实现保存文本命令 public SaveAction() super(保存文本); p
22、ublic void actionPerformed(ActionEvent e) int i = filechooser.showSaveDialog(EditorDemo.this); /显示保存文件对话框 if (i = JFileChooser.APPROVE_OPTION) /点击对话框中保存按钮 File f = filechooser.getSelectedFile(); /得到选择的文件 try FileOutputStream out = new FileOutputStream(f); /得到文件输出流 out.write(textPane.getText().getByt
23、es(); /写出文件 catch (Exception ex) ex.printStackTrace(); /输出出错信息 如下图: 图图4.3.14.3.1 保存文件生成界面保存文件生成界面 class ExitAction extends AbstractAction /实现退出命令 public ExitAction() super(退出系统); public void actionPerformed(ActionEvent e) System.exit(0); /退出程序 class CutAction extends AbstractAction /实现剪切命令 public Cu
24、tAction() super(剪切); public void actionPerformed(ActionEvent e) textPane.cut(); /调用文本窗格的剪切命令 class CopyAction extends AbstractAction /实现拷贝命令 public CopyAction() super(拷贝); public void actionPerformed(ActionEvent e) textPane.copy(); /调用文本窗格的拷贝命令 class PasteAction extends AbstractAction /实现粘贴命令 public
25、 PasteAction() super(粘贴); public void actionPerformed(ActionEvent e) textPane.paste(); /调用文本窗格的粘贴命令 class AboutAction extends AbstractAction /关于版本命令 public AboutAction() super(版本); public void actionPerformed(ActionEvent e) String str=记事本n版本:1.0n n主要功能:实现简单文本编辑。 JOptionPane.showMessageDialog(EditorD
26、emo.this, str); /显示软件信息 如下图: 图图4.2.54.2.5 显示版本界面生成图显示版本界面生成图 类向导等功能。第一次启动时提示设置JavaJDK主目录及JDKJavaDoc目录,软 件自动设置好类路径、编译器及解释器路径,还可以在帮助菜单中使用JDKHel p。 4.2.54.2.5 系统调试分析系统调试分析 1:窗口调试 确定主窗体,设置主窗体的属性,对窗体进行布局,加入所需控件并对控件进行 初始化。在完成所有方法的源代码编辑后,对程序进行编译、运行!会出现窗体 如下图: 图图4.2.64.2.6 编译运行程序生成界面编译运行程序生成界面 2 2:功能调试:功能调试
27、 对所有菜单项进行注册监听。在编写触发事件时执行各项操作,包括了一些 常用部分的事件处理,实现各功能键的操作。例如 当点击“文件“按钮是显示如下窗口: 图图4.2.74.2.7 文件按钮实现生成界面文件按钮实现生成界面 当需要打开已存在的文件时,点击“打开文本”按钮会出现如下窗口: 图图4.2.84.2.8 打开文件按钮实现生成界面打开文件按钮实现生成界面 当输入完文本是要保存的话,点击“保存文本”会出现下面的窗口: 图图4.2.94.2.9 输入文本界面输入文本界面 图图4.2.104.2.10 保存文本界面保存文本界面 依次调试其他功能键及窗口,直至达到符合要求的能实现简易的记事本的功能!
28、 4.34.3 本章小结本章小结 本章介绍了系统的具体实现和部分关键代码,其中包括如何实现新建文件, 打开文件,保存文件,退出系统以及剪切,拷贝,粘贴等具体操作。 第第5 5章章 改进部分改进部分 5.15.1加登陆界面加登陆界面 5.1.15.1.1登陆界面登陆界面设计设计 用户登陆界面图如图如图5.1.1和图5.1.2所示: 用户信息 输入信息是否 合法 用户登录到主界面 是 弹出错误信息 否 输入 登录界面 自 动 跳 转 验 证 图图5.1.15.1.1 用户登录模块框图用户登录模块框图 图图5.1.25.1.2 用户登陆界面用户登陆界面 LoginIn的作用是检测用户登陆的合法性,并
29、确认用户输入了合法的登录名和口 令 部分代码: class LoginIn extends JFrame EditorDemo edit; LoginIn login; JTextField f1; JTextField f2; JButton b1; JButton b2; String power;/ 表示权限 String imgePath = e:/workspace/GUI/14.gif; JPanel p5; Image img = Toolkit.getDefaultToolkit().createImage(imgePath); LoginIn(EditorDemo edit)
30、 this.edit = edit; login = this; Container cp = getContentPane(); Label l1 = new Label(用户:); Label l2 = new Label(密码:); JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JPanel p3 = new JPanel(); JPanel p4 = new JPanel(); p5 = new JPanel() protected void paintChildren(Graphics g) g.drawImage(img,
31、0, 0, this); super.paintChildren(g); ; f1 = new JTextField(15); f2 = new JPasswordField(15); b1 = new JButton(登录); b2 = new JButton(重置); p1.setBackground(Color.orange); p2.add(l1); p2.add(f1); p2.setBorder(new MatteBorder(0, 0, 0, 0, Color.BLACK); p2.setBackground(Color.ORANGE); p3.add(l2); p3.add(f
32、2); p3.setBackground(Color.ORANGE); p3.setBorder(new MatteBorder(0, 0, 0, 0, Color.BLACK); p4.add(b1); p4.add(b2); p4.setBorder(new MatteBorder(-3, -3, -3, -3, Color.CYAN); p4.setBackground(Color.ORANGE); p5.setLayout(new FlowLayout(FlowLayout.CENTER, 20, 20); p5.add(p2); p5.add(p3); p5.add(p4); cp.
33、add(p5, BorderLayout.CENTER); b1.addActionListener(new Enter(); b2.addActionListener(new ReWrite(); addWindowListener(new winClose(); class Enter implements ActionListener public void actionPerformed(ActionEvent e) if (f1.getText().equals(admin) power = adminstrator; login.setVisible(false); edit.se
34、tVisible(true); else if (f1.getText().equals(snake) power = adminstrator; else JOptionPane.showMessageDialog(null, 登录失败,请重新登录!); class ReWrite implements ActionListener public void actionPerformed(ActionEvent e) f1.setText(); f2.setText(); f1.requestFocus(); class winClose extends WindowAdapter publ
35、ic void windowClosing(WindowEvent e) (e.getWindow().dispose(); System.exit(0); 5.1.25.1.2 系统主界面系统主界面 登陆成功界面: 图图5.25.2登陆成功界面登陆成功界面 登陆成功后弹出记事本界面: 图图5.25.2 系统主界面系统主界面 第第6 6章章 结束语结束语 由于计算机的普及,各行业、各单位都有计算机软件系统的应用。该程序所 体现的记事本功能为相关记事本的操作和管理带来诸多方便,提高了工作效率。 本课程设计的记事本通过在JAVA平台编译、运行源代码,打开计算本窗口, 在编辑区进行文本的输入,可以使
36、用剪切、拷贝、粘贴等功能键,当文本输入完 毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开“保存”窗口,选 择保存文件的根目录进行保存。当需要关闭窗口时可通过“文件”菜单下的“退 出系统”选项,或者选择“工具栏”中的“退出系统”按钮,也可以直接点击窗 口右上角的关闭图标进行关闭。 经过java记事本的课程设计,收获到了很多,加深了对Java语言的理论知识 的理解;更加熟练的掌握了Java语言的设计能力并且有了实践经验;在设计过程 中,学到了许多在课堂上没有教授的知识;加强了对Java语言的学习兴趣和好感 。 附录附录 源代码源代码 程序源代码: /记事本 import java.awt.
37、BorderLayout; import java.awt.Color; import java.awt.Container; import java.awt.FlowLayout; import java.awt.Font; import java.awt.Graphics; import java.awt.Image; import java.awt.Label; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.
38、event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import javax.swing.AbstractAction; import javax.swing.Action; import javax.swing.JButton; import javax.swing.JFileChooser; import
39、javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JPasswordField; import javax.swing.JTextField; import javax.swing.JTextPane; import javax.
40、swing.JToolBar; import javax.swing.border.MatteBorder; import javax.swing.text.DefaultEditorKit.CopyAction; import javax.swing.text.DefaultEditorKit.CutAction; import javax.swing.text.DefaultEditorKit.PasteAction; import javax.swing.text.DefaultStyledDocument; public class EditorDemo extends JFrame
41、JTextPane textPane = new JTextPane(); / 文本窗格,编辑窗口 JLabel statusBar = new JLabel(); / 状态栏 JFileChooser filechooser = new JFileChooser(); / 文件选择器 public EditorDemo() / 构造函数 super(简易记事本); / 调用父类构造函数 Action actions = / Action数组,各种操作命令 new NewAction(), new OpenAction(), new SaveAction(), new CutAction(),
42、 new CopyAction(), new PasteAction(), new AboutAction(), new ExitAction(), ; setJMenuBar(createJMenuBar(actions); / 设置菜单栏 Container container = getContentPane(); / 得到容器 container.add(createJToolBar(actions), BorderLayout.NORTH); / 增加工具栏 container.add(textPane, BorderLayout.CENTER); / 增加文本窗格 containe
43、r.add(statusBar, BorderLayout.SOUTH); / 增加状态栏 setSize(500, 400); / 设置窗口尺寸 /setVisible(true); / 设置窗口可视 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); / 关闭窗口时退出程序 private JMenuBar createJMenuBar(Action actions) / 创建菜单栏 JMenuBar menubar = new JMenuBar(); / 实例化菜单栏 JMenu menuFile = new JMenu(文件(F); / 实例
44、化菜单 JMenu menuEdit = new JMenu(编辑(E); JMenu menuFormat = new JMenu(格式(O); JMenu menuFind = new JMenu(查找(V); JMenu menuAbout = new JMenu(帮助(H); menuFile.add(new JMenuItem(actions0); / 增加新菜单项 menuFile.add(new JMenuItem(actions1); menuFile.add(new JMenuItem(actions2); menuFile.addSeparator(); menuFile.
45、add(new JMenuItem(actions7); menuEdit.add(new JMenuItem(actions3); menuEdit.add(new JMenuItem(actions4); menuEdit.add(new JMenuItem(actions5); menuAbout.add(new JMenuItem(actions6); menubar.add(menuFile); / 增加菜单 menubar.add(menuEdit); menubar.add(menuFormat); menubar.add(menuFind); menubar.add(menuA
46、bout); return menubar; / 返回菜单栏 private JToolBar createJToolBar(Action actions) / 创建工具条 JToolBar toolBar = new JToolBar(); / 实例化工具条 for (int i = 0; i actions.length; i+) JButton bt = new JButton(actionsi); / 实例化新的按钮 bt.setRequestFocusEnabled(false); / 设置不需要焦点 bt.setFont(new Font(宋体, Font.PLAIN, 12);
47、bt.setBackground(Color.pink); toolBar.add(bt); / 增加按钮到工具栏 return toolBar; / 返回工具栏 class NewAction extends AbstractAction / 新建文件命令 public NewAction() super(新建文本); public void actionPerformed(ActionEvent e) textPane.setDocument(new DefaultStyledDocument(); / 清空文档 class OpenAction extends AbstractActio
48、n / 打开文件命令 public OpenAction() super(打开文本); public void actionPerformed(ActionEvent e) int i = filechooser.showOpenDialog(EditorDemo.this); / 显示打开文件对话框 if (i = JFileChooser.APPROVE_OPTION) / 点击对话框中打开选项 File f = filechooser.getSelectedFile(); / 得到选择的文件 try InputStream is = new FileInputStream(f); / 得
49、到文件输入流 textPane.read(is, d); / 读入文件到文本窗格 catch (Exception ex) ex.printStackTrace(); / 输出出错信息 class SaveAction extends AbstractAction / 保存命令 public SaveAction() super(保存文本); public void actionPerformed(ActionEvent e) int i = filechooser.showSaveDialog(EditorDemo.this); / 显示保存文件对话框 if (i = JFileChooser.APPROVE_OPTION) / 点击对话框中保存按钮 File f = filechooser.getSelectedFile(); / 得到选择的文件 try FileOutputStream out = new FileOutputStream(f); / 得到文件输出流 out.write(textPane.getText().getBytes(); / 写出文件 catch (Exception ex) ex.printStackTrace(); / 输出出错信息 class ExitAction extends Abs
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生活垃圾清理合同(标准版)
- 历史社团·昨日今朝
- 广西壮族自治区防城港生态环境监测中心招聘考试真题2024
- 山西省行政审批服务管理局直属事业单位招聘考试真题2025
- 吉林省地方金融监督管理局直属事业单位招聘考试真题2025
- 难点解析人教版八年级物理上册第4章光现象单元测评试卷(含答案详解版)
- 2025年房地产估价师实务操作模拟(含答案)
- 2025年建筑学专升本建筑力学强化练习试卷(含答案)
- 注册环保工程师考试(大气污染防治专业案例)全真模拟题库及答案(雄安新区2025年)
- 难点解析人教版八年级物理上册第5章透镜及其应用-凸透镜成像的规律专题训练试卷(含答案详解版)
- 心内科常见病健康教育
- 银行网点手语管理办法
- 狂犬病的护理
- 桥梁养护巡查管理培训
- 工会看电影活动方案
- 牙髓病和根尖周病的护理
- 口腔牙模印模消毒规范与实施
- 水果店员工管理制度
- 2025秋数学人教二年级(上) 校园小导游:第2课时 校园小导游
- 中医信息系统用户中医权限分级制度
- 2025年四川省广安市中考物理真题试卷及答案
评论
0/150
提交评论