Java课程设计报告记事本程序_第1页
Java课程设计报告记事本程序_第2页
Java课程设计报告记事本程序_第3页
Java课程设计报告记事本程序_第4页
Java课程设计报告记事本程序_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

X X X X 学学 院院 信息科学与工程学院信息科学与工程学院 课程设计任务书课程设计任务书 题目 简单记事本程序的设计 学 号 xxxxxxxxxxxx 姓 名 xxxxxx 专 业 计算机科学与技术 课 程 Java 程序设计 指导教师 xxxxxx 职称 xxxx 完成时间 2016 年 5 月 2016 年 6 月 xx 学院信息科学与工程学院制 年 月 日 1 课程设计任务书及成绩评定课程设计任务书及成绩评定 课程设计的任务和具体要求课程设计的任务和具体要求 使用Java语言开发一款功能完整 界面美观 运行良好的软件 软件题目自拟 写 字板 计算器类似简单的小软件1人1组 信息管理系统软件最多3人1组 游戏软件最多 2人1组 以通用的软件工程制设计规范撰写一个相应的书面文档 在该文档中要包括需 求分析 系统设计 软件用例图 系统流程图 数据库设计 系统详细设计 每个功 能模块关键代码和运行截图 指导教师签字 xxx 日期 2015 年 11 月 指导教师评语指导教师评语 成绩 指导教师签字 日期 2 课程设计所需软件 硬件等课程设计所需软件 硬件等 硬件环境 处理器 Pentium IV 以上 主频至少 2 0G 内存 512M 以上 显卡 TNT 2 显示适配器 硬盘 80G 以上 软件环境 给出本系统开发和运行所需软件环境 案例如下 操作系统 Windows XP 操作系统 数据库 MySQL Server 5 0 数据库软件 开发工具 Eclipse 应用软件开发工具 课程设计进度计划课程设计进度计划 起至日期起至日期工作内容工作内容备注备注 2015 5 30 至 2015 6 2 2016 6 3 至 2016 6 7 2016 6 8 至 2016 6 12 2016 6 13 至 2016 6 15 1 准备阶段 选择设计题目 了解设计目的的要求 查阅相关资 料 2 程序设计分析阶段 程序总 体设计 详细设计 3 代码编写调试阶段 程序模 块代码编写 调试 测试 4 撰写论文阶段 总结课程设 计任务和设计内容 撰写课程设计 论文 参考文献 资料索引参考文献 资料索引 序号文献 资料名称编著者出版单位 3 1 Java 程序开发实战教程 刘梦琳 王琳琳 王珍珍 刘巧莲 张银 龙 清华大学出版社 2015 2 Java 语言实用教程 M 丁振凡 北京邮电大学出版社 2004 12 3 Java 语言实用教程实验指导 M 丁振凡 北京邮电大学出版社 2004 12 4 Java 程序设计应用教程 孙全党 王吴迪 赵枫朝 电子工业出版 社 2006 2 5 Java 项目开发实践 网络篇 雷之宇 中国铁道出版社 2005 5 6 Java 从入门到精通 赵玉阳 清华大学出版社 2006 8 7 Java 编程实例讲解 李茏怡 高等教育出版社 2005 11 8 Java 实用教程 肖磊 李钟尉 人民邮电出版社 2008 5 9 Java 程序设计应用教程 孙全党 王吴迪 赵枫朝 电子工业出版 社 2006 2 10 Java 从入门到精通 赵玉阳 清华大学出版社 2006 8 12 JAVA 源代码缺陷分析系统的设计与实现 J 王浩 信息技术与 信息化 2015 12 13 Java 的可视化计算器实现 J 张文哲 王璐 崔洪宇 电子世界 2014 14 基于 Java 的窗体程序设计概述 J 吴闻 科技广场 2015 4 5 目录 目录 4 引言 5 第 1 章任务概述 5 1 1 1 设计时间及方案 6 1 1 2 设计目的 6 1 1 3 设计意义 6 1 2 1 需求说明 6 1 2 2 功能设计 7 第 2 章概要设计 7 2 1 1 程序设计思路 7 2 1 2 程序运行界面 8 2 1 3 模块化说明 8 2 2 1 程序流程图 9 2 2 2 程序相关说明 11 第 3 章系统详细设计 11 3 1 1 初始化组件 11 3 1 2 构建菜单栏及其下拉菜单 12 3 2 3 文件 菜单的事件监听 15 3 2 4 编辑 菜单的事件监听 17 3 2 5 格式 菜单的事件监听 19 3 2 6 查看 菜单的事件监听 20 3 2 7 帮助 菜单的事件监听 21 第 4 章测试分析 23 课程设计总结 29 致谢 30 参考文献 31 源代码 32 6 简单记事本程序的设计简单记事本程序的设计 引言 Java 的前身是 Oak 它一开始只是被应用于消费性电子产品中 后来它的 开发者们发现它还可以被用于更大范围的 Internet 上 1995 年 Java 语言的名 字从 Oak 编程了 Java 1997 年 J2SE1 1 发布 1998 年 J2SE1 2 发布 标志 Java2 的诞生 十多年来 Java 编程语言及平台成功地运用在网络计算及移动等 各个领域 Java 的体系结构由 Java 语言 Java class Java API Java 虚拟机组 成 它具有简单 面向对象 健壮 安全 结构中立 可移植和高效能等众多 优点 Java 支持多线程编程 Java 运行时系统在多线程同步方面具有成熟的解 决方案 Java 的平台标准有 Java ME Java SE 和 Java EE Java 发展到今天 它的卓越成就及在业界的地位毋庸置疑 目前在众多的支持 Java 的开发工具中 主要的 7 有 Java Development Kit NetBeans Creator Builder JDeveloper 和 Eclipse 等 其中 Java Development Kit 简称 JDK 是大多开发工具的基础 以上 的每种开发工具都有优缺点 对于开发者来说 重要的是要根据自己的开发规 模 开发内容和软硬件环境等因素来选择一种合适的开发工具 Java 语言程序设计是一门实践性很强的软件设计课程 是继 PASCAL 语言 之后的又一门优秀的课程教学语言 并且是教学需要与实际应用相结合的一门 语言 课程设计为学生提供了一个既动手又动脑 独立实践的机会 将课本上 的理论知识和实际有机的结合起来 锻炼学生的分析解决实际问题的能力 提 高学生适应实际 实践编程的能力 通过这次课程设计可以将书本上的知识转 换成实际的东西 做到学以制用 通过本次课程设计 可以帮助学生全面牢固 地掌握课堂教学内容 培养学生的实践动手能力和分 Java 语言程序设计实际问 题的能力 培养学生调查研究 查阅技术文献 资料的能力 培养学生良好的 编程风格和优秀的程序设计技术 在本程序设计中 因为需要开发的是记事本程序 规模较小 内容较少 所以选择了 Eclipse 开发工具 第 1 章任务概述 1 1 设计时间与目的 7 1 1 1 设计时间及方案 2016 05 30 至 2016 06 12 第一周 1 准备阶段 选择设计题目 了解设计目的的要求 查阅相关资 料 2 程序魔窟啊设计分析阶段 程序总体设计 详细设计 第二周 3 代码编写调试阶段 程序模块代码编写 调试 测试 4 撰写论文阶段 总结课程设计任务和设计内容 撰写课程设计 论文 1 1 2 设计目的 目前 很多新的技术领域都涉及到了 Java 语言 Java 语言是面向对象编程 并涉及到网络 多线程等重要的基础知识 因此 Java 语言也是学习面向对象编 程和网络编程的首选语言 按照教学培养计划要求 学生在学习完课本中指定 课时的知识后 应安排一定课时的课程设计 其主要目的是使学生深入理解并 实践在本课程中所学的有关 JAVA 程序设计方面的语言基础 异常处理 事件 处理 小应用程序以及图形用户界面设计等 故此 记事本 应运而生 记事本主要用于对文字进行简单编辑软件 通过自己对于 java 的学习 通 过使用 Eclipse 开发工具 编写出简单的记事本 从而提高自己对于 Java 知识 的理解和运用 1 1 3 设计意义 本课程设计是为了配合 Java 程序设计课程 帮助学生深入学习掌握 Java 语 言 熟练运用这个工具而设立的课程 通过课程设计各个项目的综合训练 加 强学生对 JAVA 语言的理解 检验学生对专业理论知识理解与掌握的程度 锻 炼学生综合运用 JAVA 程序设计处理所学的知识实际分析问题 解决问题的能 力 使课堂上的理论在实践中得到运用 提高学生的综合素质 为学生毕业后 的实际工作打好基础 同时也满足了大多数同学对于一款简单易用的日记本软 件的需求 1 2 需求分析 1 2 1 需求说明 现在网络上各种文档编辑器数不胜数 有 EmEditor UEStudio GridinSoft Notepad Notepad win32pad SkimEdit UniRed xint 功 8 能也是应有尽有 有能改变字体的 有能改变文字颜色的 但是 这些软件又 存在各种各样的瑕疵或问题 有的文件体积相对于一般文字编辑来说太大 有 的功能太繁杂 使初级使用者一时难以掌握 仅从日常应用方面来说 一个文 本编辑器只需一些新建 打开 保存 剪切 复制 粘贴等简单实用的功能就 够了 本程序设计就是依照这样一种需要 使用Eclipse 开发工具设计了一个简单 的记事本程序 1 2 2 功能设计 本程序要构建的记事本程序参照了 Windows 操作系统的记事本工具 其功 能有以下几个方面 1 菜单中有 文件 编辑 格式 查看 帮助 四个主菜单 2 文件 有 新建 打开 保存 打印 退出 四个子菜单 分 别用于新建文件 打开文件 保存文件 退出记事本 3 编辑 中有 剪切 复制 粘贴 撤销 查找 替换 删除 全选 时间 日期 九个字菜单 用于剪切文字 复制文字 粘贴文字 撤 销操作 查找替换 删除文字 选中全部文字和添加时间日期等功能 4 格式 中有 自动换行 字体 字体颜色 背景颜色 四个菜单 用于字体换行 字体设置 增加了 颜色 子菜单来对文字的颜色进行设置和对背景进行 颜色设置 5 查看 中有 行数列数 已查看文字行列数 6 帮助 菜单中有 使用手册 关于记事本 两个菜单 用于介绍使 用方法 关于记事本程序的制作日期 作者等信息 9 第 2 章概要设计 2 1 设计说明 2 1 1 程序设计思路 在本程序中 设计了一个菜单栏和文本内容区 设计过程中用到了 JFrame JScrollPane JMenu JMenuItem JTextArea JFileChooser 等 JMenu 用来制作菜单 菜单包括 文件 编辑 格式 查看 帮助 JTextArea 主要用来输入文本 为了加入颜色的设置 所以加了一个 JColorChooser 组件 2 1 2 程序运行界面 2 1 3 模块化说明 如图 1 在图 1 中 首先创建一个名为 MyNotepad 的类并继承 JFrame 类作为最底 MyNotepad implements extends ActionListener JFrame 10 层的容器 如图 2 在图 2 中 构造一个 MyNotepad 类时要做三件事情 分别是初始化容器 jmb 初始化组件 menuFile menuEdit menuForm menuView menuHelp 设置事件监听器 2 2 程序说明 MyNotepad 的构造方法 初始化容器 组件 添加事件监 听 菜单栏 文字输入区 文件 格式帮助 新 建 打 开 保 存 另 存 为 打 印 退 出 自 动 换 行 字 体 字 体 颜 色 背 景 颜 色 行 数 列 数 关 于 作 者 初始化初始化 编辑 剪 切 复 制 粘 贴 撤 销 查 找 替 换 删 除 全 选 时 间 日 期 使 用 手 册 查看 11 2 2 1 程序流程图 False False true true true true true true true true true 图 3 启动程序 输入文字 新 建 打 开 保 存 退 出 另 存 为 剪 切 复 制 粘 贴 删 除 file null read write System exit 0 write jta cut jta copy jta paste jta replaceSelecti on nullnull 关闭或退出程序 12 False False true true true true true true true true true 图 4 2 2 2 程序相关说明 整个记事本分为 2 快 菜单栏和内容输入区 本程序中首先定义一个 MyNotepad 类继承 JFrame 作为最底层容器 1 jta 为程序文本输入区 2 Menu 为菜单栏 3 FontDialog 为字体设置对话框 启动程序 输入文字 查 找 替 换 全 选 时 间 自 动 换 行 字 体 字 体 颜 色 行 数 列 数 关 于 记 事 本 jf pack jf pack jta selectAll Date staeChanged FontDialog Color careUpdate jta replaceSelectio n null 关闭或退出程序 13 4 read write newNew 实现记事本的创建 读取 存储 5 updateStatus 记事本行列数的算数 6 要想记事本完成需求分析中相应的功能 还必须添加事件监听器 事件监听器不仅要 添加在菜单栏和内容输入区 还需加在容器中 本程序中 ActListener 实现 ActionListener 接口 用来监听并处理所有菜单项和内容输入区为事件源的事件 另外 还用来 WindowListener 来监听处理容器关闭触发的事件 WindowListener 继承 了 WindowsAdapter 类并覆盖了 WindowsClosing 方法 第 3 章系统详细设计 3 1 程序详细设计与分析 3 1 1 初始化组件 private JFrame frame new JFrame private JTextArea jta new JTextArea private String result private boolean flag true private File f private JButton jb new JButton 开始 private JTextField jtf new JTextField 15 private JTextField jt new JTextField 15 private JButton jbt new JButton 替换为 private JButton jba new JButton 全部替换 private Icon ic new ImageIcon cn src res jishiben jpg private String value private int start 0 private JFrame jf new JFrame 查找 private JFrame jfc new JFrame 替换 private JTextField status read write newNew FontDialog updateStatus 14 3 1 2 构建菜单栏及其下拉菜单 JMenuBar jmb new JMenuBar 创建文件菜单及文件菜单项 menuFile new JMenu 文件 miNew new JMenuItem 新建 new ImageIcon icons new24 gif miNew setFont new Font 微软雅黑 Font BOLD 13 miNew setAccelerator KeyStroke getKeyStroke KeyEvent VK N InputEvent CTRL MASK miOpen new JMenuItem 打开 new ImageIcon icons open24 gif miOpen setFont new Font 微软雅黑 Font BOLD 13 miOpen setAccelerator KeyStroke getKeyStroke KeyEvent VK O InputEvent CTRL MASK miSave new JMenuItem 保存 new ImageIcon icons save gif miSave setFont new Font 微软雅黑 Font BOLD 13 miSave setAccelerator KeyStroke getKeyStroke KeyEvent VK S InputEvent CTRL MASK miAsSave new JMenuItem 另存为 new ImageIcon icons assave gif miAsSave setFont new Font 微软雅黑 Font BOLD 13 miAsSave setAccelerator KeyStroke getKeyStroke KeyEvent VK Q InputEvent CTRL MASK miPrint new JMenuItem 打印 new ImageIcon icons print gif miPrint setFont new Font 微软雅黑 Font BOLD 13 miPrint setAccelerator KeyStroke getKeyStroke KeyEvent VK P InputEvent CTRL MASK miExit new JMenuItem 退出 new ImageIcon icons exit24 gif miExit setFont new Font 微软雅黑 Font BOLD 13 miExit setAccelerator KeyStroke getKeyStroke KeyEvent VK E InputEvent CTRL MASK 创建编辑菜单及菜单项 menuEdit new JMenu 编辑 cutMenuItem new JMenuItem 剪切 new ImageIcon icons cut24 gif cutMenuItem setFont new Font 微软雅黑 Font BOLD 13 cutMenuItem setAccelerator KeyStroke getKeyStroke KeyEvent VK X InputEvent CTRL MASK 15 copyMenuItem new JMenuItem 复制 new ImageIcon icons copy24 gif copyMenuItem setFont new Font 微软雅黑 Font BOLD 13 copyMenuItem setAccelerator KeyStroke getKeyStroke KeyEvent VK C InputEvent CTRL MASK pasteMenuItem new JMenuItem 粘贴 new ImageIcon icons paste24 gif pasteMenuItem setFont new Font 微软雅黑 Font BOLD 13 pasteMenuItem setAccelerator KeyStroke getKeyStroke KeyEvent VK V InputEvent CTRL MASK backMenuItem new JMenuItem 撤销 new ImageIcon icons Z24 gif backMenuItem setFont new Font 微软雅黑 Font BOLD 13 backMenuItem setAccelerator KeyStroke getKeyStroke KeyEvent VK Z InputEvent CTRL MASK foundItem new JMenuItem 查找 foundItem setFont new Font 微软雅黑 Font BOLD 13 foundItem setAccelerator KeyStroke getKeyStroke KeyEvent VK F InputEvent CTRL MASK replaceItem new JMenuItem 替换 replaceItem setFont new Font 微软雅黑 Font BOLD 13 replaceItem setAccelerator KeyStroke getKeyStroke KeyEvent VK R InputEvent CTRL MASK deleteItem new JMenuItem 删除 deleteItem setFont new Font 微软雅黑 Font BOLD 13 deleteItem setAccelerator KeyStroke getKeyStroke KeyEvent VK D InputEvent CTRL MASK selectAll new JMenuItem 全选 selectAll setFont new Font 微软雅黑 Font BOLD 13 selectAll setAccelerator KeyStroke getKeyStroke KeyEvent VK A InputEvent CTRL MASK timeItem new JMenuItem 时间 日期 timeItem setFont new Font 微软雅黑 Font BOLD 13 timeItem setAccelerator KeyStroke getKeyStroke KeyEvent VK T InputEvent CTRL MASK 创建格式菜单及菜单项 menuForm new JMenu 格式 wrapline new JCheckBoxMenuItem 自动换行 wrapline setFont new Font 微软雅黑 Font BOLD 13 16 wrapline setAccelerator KeyStroke getKeyStroke KeyEvent VK W InputEvent CTRL MASK font new JMenuItem 字体 font setFont new Font 微软雅黑 Font BOLD 13 font setAccelerator KeyStroke getKeyStroke KeyEvent VK F InputEvent CTRL MASK color new JMenuItem 字体颜色 background new JMenuItem 背景颜色 menuView new JMenu 查看 Kranks new JCheckBoxMenuItem 行数列数 Kranks setFont new Font 微软雅黑 Font BOLD 13 Kranks setAccelerator KeyStroke getKeyStroke KeyEvent VK K InputEvent CTRL MASK menuHelp new JMenu 帮助 miUserGuide new JMenuItem 使用手册 miAbout new JMenuItem 关于记事本 jmb add menuFile jmb add menuEdit jmb add menuForm jmb add menuView jmb add menuHelp 添加菜单项 menuFile add miNew menuFile add miOpen menuFile add miSave 加线 menuFile add miAsSave menuFile addSeparator menuFile add miPrint menuFile add miExit menuEdit add cutMenuItem menuEdit add copyMenuItem menuEdit add pasteMenuItem menuEdit addSeparator menuEdit add backMenuItem menuEdit add foundItem menuEdit add replaceItem menuEdit add deleteItem menuEdit addSeparator menuEdit add selectAll 17 menuEdit add timeItem menuForm add wrapline menuForm add font menuForm add color menuForm add background menuView add Kranks menuHelp add miUserGuide menuHelp add miAbout 3 2 事件监听 3 2 3 文件 菜单的事件监听 public void actionPerformed ActionEvent e String comm e getActionCommand if 新建 equals comm if frame getTitle equals 新记事本 if flag write newNew else JFileChooser jfc new JFileChooser D java课堂笔记 int returnVal jfc showDialog null 保存为 if returnVal JFileChooser APPROVE OPTION 选 择文件后再执行下面的语句 保证了程序的健壮性 f jfc getSelectedFile flag false write else if jta getText isEmpty JFileChooser jfc new JFileChooser D java课堂笔记 int returnVal jfc showDialog null 保存为 if returnVal JFileChooser APPROVE OPTION 选择文 件后再执行下面的语句 保证了程序的健壮性 f jfc getSelectedFile flag false write newNew 18 else newNew else if 打开 equals comm JFileChooser jfc new JFileChooser D java课堂笔记 jfc setDialogType JFileChooser OPEN DIALOG int returnVal jfc showOpenDialog null if returnVal JFileChooser APPROVE OPTION 选择文件后 再执行下面的语句 保证了程序的健壮性 f jfc getSelectedFile frame setTitle f getName result read flag false value result jta setText result else if 保存 equals comm JFileChooser jfc new JFileChooser D java课堂笔记 if flag int returnVal jfc showDialog null 保存为 if returnVal JFileChooser APPROVE OPTION 选择文 件后再执行下面的语句 保证了程序的健壮性 f jfc getSelectedFile flag false write else write else if 另存 equals comm JFileChooser jfc new JFileChooser D java课堂笔记 int returnVal jfc showDialog null 另存 if returnVal JFileChooser APPROVE OPTION 选择文件后 再执行下面的语句 保证了程序的健壮性 f jfc getSelectedFile write else if 打印 equals comm JOptionPane showMessageDialog null 无法连接打印机 else if 退出 equals comm MyNotepad f new MyNotepad int s JOptionPane showConfirmDialog f 退出 退出 JOptionPane YES NO OPTION 19 System exit 0 3 2 4 编辑 菜单的事件监听 else if 剪切 equals comm value jta getText jta cut else if 复制 equals comm jta copy else if 粘贴 equals comm value jta getText jta paste else if 撤销 equals comm jta setText value else if 查找 equals comm value jta getText jf add jtf BorderLayout CENTER jf add jb BorderLayout SOUTH jf setLocation 300 300 jf pack jf setVisible true jf setDefaultCloseOperation JFrame DISPOSE ON CLOSE else if 替换 equals comm value jta getText GridLayout gl new GridLayout 3 3 JLabel jl1 new JLabel 查找内容 JLabel jl2 new JLabel 替换为 jfc setLayout gl jfc add jl1 jfc add jtf jfc add jb jfc add jl2 jfc add jt jfc add jbt JLabel jl3 new JLabel JLabel jl4 new JLabel jfc add jl3 jfc add jl4 jfc add jba jfc setLocation 300 300 jfc pack jfc setVisible true jfc setDefaultCloseOperation JFrame DISPOSE ON CLOSE 20 else if 开始 equals comm 下一个 equals comm String temp jtf getText int s value indexOf temp start if value indexOf temp start 1 jta setSelectionStart s jta setSelectionEnd s temp length jta setSelectedTextColor Color GREEN start s 1 jb setText 下一个 else JOptionPane showMessageDialog jf 查找完毕 提示 0 ic jf dispose else if 替换为 equals comm String temp jtf getText int s value indexOf temp start if value indexOf temp start 1 jta setSelectionStart s jta setSelectionEnd s temp length jta setSelectedTextColor Color GREEN start s 1 jta replaceSelection jt getText else JOptionPane showMessageDialog jf 查找完毕 提示 0 ic jf dispose else if 全部替换 equals comm String temp jta getText temp temp replaceAll jtf getText jt getText jta setText temp else if 删除 equals comm value jta getText jta replaceSelection null else if 全选 equals comm jta selectAll else if 时间 日期 equals comm Date date new Date SimpleDateFormat format new SimpleDateFormat HH mm ss yyyy MM dd jta setText format format date 覆盖时添加日期 jta append format format date 21 3 2 5 格式 菜单的事件监听 else if 自动换行 equals comm jta setLineWrap true 激活自动换行功能 jta setWrapStyleWord true 激活断行不断字功能 wrapline addChangeListener new ChangeListener public void stateChanged ChangeEvent e if wrapline isSelected jta setLineWrap true JTextArea有个方法为setLineWrap boolean wrap 将参数设为True 就可以自动换行 else jta setLineWrap false else if 字体 equals comm 字体 FontDialog fontDialog new FontDialog frame fontDialog setVisible true if jta getFont fontDialog getFont jta setFont fontDialog getFont else if 字体颜色 equals comm 颜色 Color color1 JColorChooser showDialog MyNotepad1 this 选择字体颜色 Color black if color1 null jta setForeground color1 else return else if 背景颜色 equals comm 背景颜色 Color JColorChooser showDialog this 选择背景颜色 Color white if color null jta setBackground color 22 else return 3 2 6 查看 菜单的事件监听 else if 行列数 equals comm 状态栏 行列数 jta addCaretListener new CaretListener public void caretUpdate CaretEvent e if Kranks isSelected jta JTextArea e getSource int linenum 1 int columnnum 1 try int caretpos jta getCaretPosition linenum jta getLineOfOffset caretpos columnnum caretpos jta getLineStartOffset linenum linenum 1 catch Exception ex updateStatus linenum columnnum else JTextArea textArea JTextArea e getSource int caretpos textArea getCaretPosition add jta BorderLayout CENTER status new JTextField add status BorderLayout SOUTH updateStatus 1 1 3 2 7 帮助 菜单的事件监听 else if 使用手册 equals comm try Runtime getRuntime exec cmd c start http 210 44 232 18 catch IOException source1 JOptionPane showMessageDialog null 无法访问指定网址 23 else if 版本 equals comm JLabel Name Version Author Java JPanel Panel JButton OK new JButton OK JButton Icon new JButton new ImageIcon image woshou gif JDialog jd new JDialog frame 关于作者 icons woshou gif Name new JLabel 版本 4 Version new JLabel 作者 王路宽 Java new JLabel 发行日期 2016 6 9 Author new JLabel 版权 计算机科学与技术 Panel new JPanel Color c new Color 0 95 191 Name setForeground c Version setForeground c Java setForeground c Author setForeground c Panel setBackground Color white OK setFocusable false jd setBounds 250 200 370 270 jd setResizable false jd setLayout null Panel setLayout null OK addActionListener this OK addActionListener new java awt event ActionListener public void actionPerformed java awt event ActionEvent e jd setVisible false System exit 0 Icon setFocusable false Icon setBorderPainted false Author setFont new Font null Font PLAIN 11 Panel add Icon Panel add Name Panel add Version Panel add Author Panel add Java jd add Panel jd add OK 24 Panel setBounds 0 0 370 200 OK setBounds 280 210 72 26 Name setBounds 220 20 160 20 Version setBounds 220 50 160 20 Author setBounds 220 110 160 20 Java setBounds 220 80 160 20 Icon setBounds 16 14 180 160 jd setVisible true jd setDefaultCloseOperation JDialog DISPOSE ON CLOSE 3 3 异常处理 在运行程序代码是有可能会产生异常情况或异常事件 为了避免这种情况 就需要在程序中用到 Java 异常处理机制 本程序中选用的异常处理机制是 try catch 捕获处理异常的第一步是用 try 选定要监控的异常范围 try 后跟随 catch 代码块 public String read String temp try FileInputStream fis new FileInputStream f getAbsolutePath byte b new byte 1024 while true int num fis read b if num 1 break temp temp new String b 0 num fis close catch Exception e1 e1 printStackTrace return temp public void write try FileOutputStream fos new FileOutputStream f fos write jta getText getBytes fos close catch Exception e e printStackTrace 25 第 4 章测试分析 4 1 文件 测试分析 图 5 点击 文件 运行情况 图 6 文件 菜单中的 打开 对话框 26 图 7 文件 菜单中的 打开 对话框 图 8 文件 菜单中的 退出 对话框 4 2 编辑 测试分析 27 图 9 点击 编辑 运行情况 图 10 编辑 菜单中的 替换 对话框 4 3 格式 测试与分析 28 图 11 点击 编辑 运行情况 图 12 格式 菜单中的 字体 对话框 29 图 12 格式 菜单中的 字体颜色 对话框 4 4 查看 测试与分析 图 13 查看 菜单中的 行数列数 对话框 4 4 帮助 测试与分析 30 图 14 帮助 菜单中的 关于记事本 对话 31 课程设计总结 经过差不多两个星期的努力 基本上完成我的 Java 课程设计 简单的记事本程序 也 基本上实现了我在需求分析时所预期的功能 通过这次的课程设计 使将我从书本上学习 到的理论知识用到了实践上 从而进一步巩固和丰富了我所学过的知识 让我更深层次地 认识到 Java 及其强大的功能 同时 做这门课程设计也进一步加强了我的动手能力 为了 完成好这次课程设计 我提前做了较多的准备 一边上网查找相关资料 另一方面查阅相 关书籍 在这过程中也无形中锻炼了我的思维分析 遇到问题及想方设法通过各种途径解 决问题的能力 但是 设计过程中也存在一些问题 本来一开始想给这个记事本程序加上一张背景图 片 但是由于本人知识浅陋以及各种其他原因 使得这些想法没有实现 这是这次课程设 计的一点遗憾 此次的课程设计 让我体会到 java 编程在实际生活中应用的广泛与实用性 同时让我在复 习前面所学知识的同时发现在学习中的欠缺与不足 因而在今后的学习中要更加努力 还 要感谢老师的监督以及疑难解答 才能是这次课设顺利完成 在这里 感谢指导我的老师 32 致谢 感谢老师能够耐心的指导我 才能让我们能够顺利的完成这个课程设计 在老师细心的监督指导 我才能够完成这项起初我认为很难的任务 帮助我开 拓研究思路 精心点拨 热忱鼓励 已经要求我严谨求实的态度 踏踏实实的 精神 才能让我们顺利完成任务 通过这次 java 课程设计 使我们得到了一次用专业知识 专业技能分析和 解决问题全面系统的锻炼 使我在 eclipse 的应用开发过程 以及在设计思路技巧 的掌握方面都能向前

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论