文本编辑器java课程设计


    计算机系
    课程设计报告



    课程名称

    Java程序设计
    课程代码


    题 目

    文编辑器
    年级专业班

    07级计算机科学技术班
    学生姓名


    学 号


    指导老师


    开题时间

    2008年12月22日
    完成时间

    2009年01月03日




    2009年X月X日

    前 言

    Java课程设计计算机科学技术专业学生专业实践必修课程学Java程序设计课程非常重综合性实践教学环节课程设计检验学生否掌握相关专业课程知识重手段时课程设计应充分体现教师指导学生中心教学模式学生认知体充分调动学生积极性动性重视学生实践应力学力培养












    课程设计务书成绩评定

    课程名称

    Java程序设计
    完成者


    1 设计目求
    (1)设计目:
    Java课程设计计算机科学技术专业学生专业实践必修课程学Java程序设计课程非常重综合性实践教学环节课程设计检验学生否掌握相关专业课程知识重手段时课程设计应充分体现教师指导学生中心教学模式学生认知体充分调动学生积极性动性重视学生实践应力学力培养
    通设计文编辑器实现功熟练掌握JAVA语言基础初步掌握软件开发中系统分析系统设计系统实现系统测试等阶段基方法技术培养学生创新意识提高实践应力培养应型服务

    (2)做文编辑器求:
    <1> 菜单求:
    求新建 保存存退出 拷贝剪切粘贴帮助等功
    <2>求操作简单界面清晰灵活实方便
    <3>求程序须调试添加异常处理代码注释时功实现代码进行优化
    <4>响应键盘鼠标事件时添加快捷键

    2 设计进度完成情况

    日 期

    2008年12月22日
    准备审题接受务开发环境配置等
    2008年12月23~24日
    查找相关资料系统调查需求分析
    2008年12月25日
    系统建模
    2008年12月26日
    概设计
    2008年12月27~28日
    详细设计
    2008年12月29~31日
    编码测试
    2008年01月01日
    部署配置运行
    2009年01月02~03日
    撰写课程设计报告
    2009年01月04日
    课程设计总结
    2009年01月05日
    正式提交课程设计报告系统源程序


    3成绩评定
    设计成绩: (教师填写)
    指导老师: (签 字)
    2009 年 月 日

    目 录
    1 引言 1
    2 设计务目 1
    4 系统设计 2
    41 总体设计 3
    411 系统类图 3
    42 详细设计 3
    6 系统实现 6
    61 系统例实现 7
    611运行例运行效果 7
    612 开文档例运行效果 7
    613 关例运行效果 8
    7 结束语 8
    参考文献 9
    致谢 9
    附录A:系统源程序 9
    附录B:编码规范 12


    文编辑器
    1 引言
    计算机普发展软件行业社会占着举足轻重作现市场中存文编辑器已少数种功已相齐全作未事软件行业专业士着软件发展周期研究课题学程掌握文编辑器JAVA相关知识必科技发展前方便生活
    事实暂时知识限制性做较简单文编辑器通学期JAVA 解课程设计培训文编辑器功详细研究功转化程序代码分编辑区输入区等文编辑器含保存 退出查找拷贝剪切粘贴等简功操作简单界面清晰灵活实方便等优点适简便存档撰写文稿

    2 设计务目
    1)设计简单文编辑器实现功:
    1:文件新建开保存存
    2:文件编辑全选复制剪切粘贴
    3:执行完操作够利关闭记事
    2)通次设计帮助学生:
    1:提高Java语言设计掌握力
    2:理联系实际进步提高学生软件开发技术
    3:培养学生分析解决问题力

    3 需求分析
    科学技术飞速发展天计算机科学日渐成熟强功已深刻认识已进入类社会领域发挥着越越重作应JAVA技术实现学生学实践行必工作 社会生活中常需电脑编写文档保存文件课程设计运JAVA软件开发工具开发应软件适合编写记录文件 训练学生灵活应学Java语言基知识熟练完成问题分析算法设计编写程序求解出指定问题训练系统观点软件开发般规范进行软件开发巩固深化学生理知识提高编程水程中培养严谨科学态度良工作作风 提高综合运学理知识方法独立分析解决问题力
    运行求: 程序运JAVA语言编成首先必须电脑安装JAVA虚拟机环境变量进行设置完成JAVA环境设置集成环境Eclipse中进行编程

    4 系统设计
    41 总体设计
    411 系统类图


    图41 系统类图
    42 详细设计

    (1).类包加载

    import javaawt*
    import javaawtevent*
    import javaio*
    import javaxswing*
    import javaxswingtext*

    (2) 设计类变量定义

    public class EditorDemo extends JFrame {
    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()
    new CopyAction()
    new PasteAction()
    new AboutAction()
    new ExitAction()}

    setJMenuBar(createJMenuBar(actions)) 设置菜单栏
    Container container getContentPane() 容器
    containeradd(createJToolBar(actions) BorderLayoutNORTH) 增加工具栏
    containeradd(textPane BorderLayoutCENTER) 增加文窗格
    containeradd(statusBar BorderLayoutSOUTH) 增加状态栏

    setSize(330 200) 设置窗口尺寸
    setVisible(true) 设置窗口视
    setDefaultCloseOperation(JFrameEXIT_ON_CLOSE) 关闭窗口时退出程序
    }

    private JMenuBar createJMenuBar(Action[] actions) { 创建菜单栏
    JMenuBar menubar new JMenuBar() 实例化菜单栏
    JMenu menuFile new JMenu(文件) 实例化菜单
    JMenu menuEdit new JMenu(编辑)
    JMenu menuAbout new JMenu(帮助)
    menuFileadd(new JMenuItem(actions[0])) 增加新菜单项
    menuFileadd(new JMenuItem(actions[1]))
    menuFileadd(new JMenuItem(actions[2]))
    menuFileadd(new JMenuItem(actions[7]))
    menuEditadd(new JMenuItem(actions[3]))
    menuEditadd(new JMenuItem(actions[4]))
    menuEditadd(new JMenuItem(actions[5]))
    menuAboutadd(new JMenuItem(actions[6]))
    menubaradd(menuFile) 增加菜单
    menubaradd(menuEdit)
    menubaradd(menuAbout)
    return menubar 返回菜单栏
    }

    private JToolBar createJToolBar(Action[] actions) { 创建工具条
    JToolBar toolBar new JToolBar() 实例化工具条
    for (int i 0 i < actionslength i++) {
    JButton bt new JButton(actions[i]) 实例化新钮
    btsetRequestFocusEnabled(false) 设置需焦点
    toolBaradd(bt) 增加钮工具栏
    }
    return toolBar 返回工具栏
    }


    (3)文件操作功实现

    class NewAction extends AbstractAction { 新建文件命令
    public NewAction() {
    super(新建)
    }
    public void actionPerformed(ActionEvent e) {
    textPanesetDocument(new DefaultStyledDocument()) 清空文档
    }
    }

    class OpenAction extends AbstractAction { 开文件命令
    public OpenAction() {
    super(开)
    }
    public void actionPerformed(ActionEvent e) {
    int i filechoosershowOpenDialog(EditorDemothis) 显示开文件话框
    if (i JFileChooserAPPROVE_OPTION) { 点击话框中开选项
    File f filechoosergetSelectedFile() 选择文件
    try {
    InputStream is new FileInputStream(f) 文件输入流
    textPaneread(is d) 读入文件文窗格
    } catch (Exception ex) {
    exprintStackTrace() 输出出错信息
    }
    }
    }
    }

    class SaveAction extends AbstractAction { 保存命令
    public SaveAction() {
    super(保存)
    }
    public void actionPerformed(ActionEvent e) {
    int i filechoosershowSaveDialog(EditorDemothis) 显示保存文件话框
    if (i JFileChooserAPPROVE_OPTION) { 点击话框中保存钮
    File f filechoosergetSelectedFile() 选择文件
    try {
    FileOutputStream out new FileOutputStream(f) 文件输出流
    outwrite(textPanegetText()getBytes()) 写出文件
    } catch (Exception ex) {
    exprintStackTrace() 输出出错信息
    }
    }
    }
    }

    class ExitAction extends AbstractAction { 退出命令
    public ExitAction() {
    super(退出)
    }
    public void actionPerformed(ActionEvent e) {
    Systemexit(0) 退出程序
    }
    }

    class CutAction extends AbstractAction { 剪切命令
    public CutAction() {
    super(剪切)
    }
    public void actionPerformed(ActionEvent e) {
    textPanecut() 调文窗格剪切命令
    }
    }

    class CopyAction extends AbstractAction { 拷贝命令
    public CopyAction() {
    super(拷贝)
    }
    public void actionPerformed(ActionEvent e) {
    textPanecopy() 调文窗格拷贝命令
    }
    }

    class PasteAction extends AbstractAction { 粘贴命令
    public PasteAction() {
    super(粘贴)
    }
    public void actionPerformed(ActionEvent e) {
    textPanepaste() 调文窗格粘贴命令
    }
    }

    class AboutAction extends AbstractAction { 关选项命令
    public AboutAction() {
    super(关)
    }
    public void actionPerformed(ActionEvent e) {
    JOptionPaneshowMessageDialog(EditorDemothis 简单文编辑器演示) 显示软件信息
    }
    }

    public static void main(String[] args) {
    new EditorDemo()
    }
    6 系统实现

    61 系统例实现

    611运行例运行效果



    图61 运行例运行效果图
    612 开文档例运行效果



    图62 开文件例运行效果图
    613 关例运行效果



    图63 例演示运行效果

    7 结束语
    作计算机科学技术二学生觉做类似课程设计十分意义十分必已度二时间里数接触专业基础课课堂掌握仅仅专业基础课理面锻炼实践面?学专业基础理知识实践中呢?想做类似作业提供良实践台做次课程设计程中感触深数查阅量书籍设计更加完善更加符合软件工程标准次次翻阅种参考资料十分必时必少作设计艺术家抛开实际情幻想世界里翱翔软件设计师切理寻切实际构想永远构想永远法升级设计作名专业学生掌握门门程序设计语言必少次课程设计求java进行开发程中种开发环境进行探索java集成开发环境更深刻理解然未独立应学程中带着问题学发现效率高记学c语言难没放者角度单单学学样效率然会高边学边样会提高效率作次课程设计第二收获水限难免会错误老师批评指正

    参考文献
    [1] 张广彬孟红蕊张永宝Java课程设计案例精编[M]北京清华学出版社20071
    [2] 黄晓东Java课程设计案例精编[M]北京中国水利水电出版社20045
    [3] 求科技 Java信息理系统开发实例导航[M]北京民邮电出版社20054
    [4] 求科技Java数库系统开发实例导航[M]北京民邮电出版社20049
    . [5] java编程思想机械工业出版社1999年4月
    [6]java项目设计开发范例电子工业出版社2005年4月唐军等
    [7]标准java 2 手册电子工业出版社2005年1月魏海萍
    [8]java开放源码编程电子工业出版社2005年1月沃纳斯

    致谢
    非常感谢XX老师指导学会门课程成功完成次课程设计设计程中予帮助学朋友家努力天成果

    附录A:系统源程序
    package Wenben
    import javaawt*
    import javaawtevent*
    import javaio*
    import javaxswing*
    import javaxswingtext*

    简单文编辑器

    public class EditorDemo extends JFrame {
    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()
    new CopyAction()
    new PasteAction()
    new AboutAction()
    new ExitAction()}

    setJMenuBar(createJMenuBar(actions)) 设置菜单栏
    Container container getContentPane() 容器
    containeradd(createJToolBar(actions) BorderLayoutNORTH) 增加工具栏
    containeradd(textPane BorderLayoutCENTER) 增加文窗格
    containeradd(statusBar BorderLayoutSOUTH) 增加状态栏

    setSize(330 200) 设置窗口尺寸
    setVisible(true) 设置窗口视
    setDefaultCloseOperation(JFrameEXIT_ON_CLOSE) 关闭窗口时退出程序
    }

    private JMenuBar createJMenuBar(Action[] actions) { 创建菜单栏
    JMenuBar menubar new JMenuBar() 实例化菜单栏
    JMenu menuFile new JMenu(文件) 实例化菜单
    JMenu menuEdit new JMenu(编辑)
    JMenu menuAbout new JMenu(帮助)
    menuFileadd(new JMenuItem(actions[0])) 增加新菜单项
    menuFileadd(new JMenuItem(actions[1]))
    menuFileadd(new JMenuItem(actions[2]))
    menuFileadd(new JMenuItem(actions[7]))
    menuEditadd(new JMenuItem(actions[3]))
    menuEditadd(new JMenuItem(actions[4]))
    menuEditadd(new JMenuItem(actions[5]))
    menuAboutadd(new JMenuItem(actions[6]))
    menubaradd(menuFile) 增加菜单
    menubaradd(menuEdit)
    menubaradd(menuAbout)
    return menubar 返回菜单栏
    }

    private JToolBar createJToolBar(Action[] actions) { 创建工具条
    JToolBar toolBar new JToolBar() 实例化工具条
    for (int i 0 i < actionslength i++) {
    JButton bt new JButton(actions[i]) 实例化新钮
    btsetRequestFocusEnabled(false) 设置需焦点
    toolBaradd(bt) 增加钮工具栏
    }
    return toolBar 返回工具栏
    }

    class NewAction extends AbstractAction { 新建文件命令
    public NewAction() {
    super(新建)
    }
    public void actionPerformed(ActionEvent e) {
    textPanesetDocument(new DefaultStyledDocument()) 清空文档
    }
    }

    class OpenAction extends AbstractAction { 开文件命令
    public OpenAction() {
    super(开)
    }
    public void actionPerformed(ActionEvent e) {
    int i filechoosershowOpenDialog(EditorDemothis) 显示开文件话框
    if (i JFileChooserAPPROVE_OPTION) { 点击话框中开选项
    File f filechoosergetSelectedFile() 选择文件
    try {
    InputStream is new FileInputStream(f) 文件输入流
    textPaneread(is d) 读入文件文窗格
    } catch (Exception ex) {
    exprintStackTrace() 输出出错信息
    }
    }
    }
    }

    class SaveAction extends AbstractAction { 保存命令
    public SaveAction() {
    super(保存)
    }
    public void actionPerformed(ActionEvent e) {
    int i filechoosershowSaveDialog(EditorDemothis) 显示保存文件话框
    if (i JFileChooserAPPROVE_OPTION) { 点击话框中保存钮
    File f filechoosergetSelectedFile() 选择文件
    try {
    FileOutputStream out new FileOutputStream(f) 文件输出流
    outwrite(textPanegetText()getBytes()) 写出文件
    } catch (Exception ex) {
    exprintStackTrace() 输出出错信息
    }
    }
    }
    }

    class ExitAction extends AbstractAction { 退出命令
    public ExitAction() {
    super(退出)
    }
    public void actionPerformed(ActionEvent e) {
    Systemexit(0) 退出程序
    }
    }

    class CutAction extends AbstractAction { 剪切命令
    public CutAction() {
    super(剪切)
    }
    public void actionPerformed(ActionEvent e) {
    textPanecut() 调文窗格剪切命令
    }
    }

    class CopyAction extends AbstractAction { 拷贝命令
    public CopyAction() {
    super(拷贝)
    }
    public void actionPerformed(ActionEvent e) {
    textPanecopy() 调文窗格拷贝命令
    }
    }

    class PasteAction extends AbstractAction { 粘贴命令
    public PasteAction() {
    super(粘贴)
    }
    public void actionPerformed(ActionEvent e) {
    textPanepaste() 调文窗格粘贴命令
    }
    }

    class AboutAction extends AbstractAction { 关选项命令
    public AboutAction() {
    super(关)
    }
    public void actionPerformed(ActionEvent e) {
    JOptionPaneshowMessageDialog(EditorDemothis 简单文编辑器演示) 显示软件信息
    }
    }

    public static void main(String[] args) {
    new EditorDemo()
    }

    }
    湖南文科技学院课程设计

    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 2 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    数据结构文本编辑器课程设计

    数据结构课程设计报告一. 需求分析1.题目及要求名称:简单的文本编辑器内容:输入一页文字,程序可以统计出文字、数字、空格的个数。静态存储一页文章,每行最多不超过80个字符,共N行。要求:(1)...

    1年前   
    307    0

    java课程设计烟花游戏

    烟花游戏1. 课程设计的目的随着现代科学技术的进步,Java语言在编程方面的优势使得编程有了更好的选择。Java语言最大的特点是具有跨平台性,使其不受平台不同的影响。在网络飞速发展的今天,互联...

    3年前   
    404    0

    java课程设计实验报告样例

    分数_______嘉应学院计算机学院实验报告课程名称:面向对象程序设计课程设计(Java) 实验名称:”动物换位”程序设计 指导教师:肖振球 实验地点:_居家学习_实验时间:2020.03...

    4年前   
    870    0

    小学算术运算测试程序JAVA课程设计报告

    面向对象程序设计(JAVA)课程设计说明书学院名称: 计算机与信息工程学院 班级名称: 20XX级计算机科学与技术 题 目: ...

    3年前   
    700    0

    Java与SQL数据库技术学生成绩管理系统课程设计

    《数据库系统原理》课程设计报告说明书学生信息管理系统学生姓名学 号所在专业所在班级指导教师提交时间 评阅情况成 绩目 录读书笔记 11. 学生信息管理系统概述 21.1 研...

    3年前   
    610    0

    JAVA数据库课程设计-学生选课管理系统的

     一、课程设计目的 通过这次的设计,主要是做出一个小型的管理系统,来加强对JAVA所学知识的巩固和融会贯通,可以说是对一个学期所学知识的一个小结,加深对JAVA数据库的理...

    5年前   
    1642    0

    Java课程设计-教职工档案管理系统

    职工档案管理系统一.引言 1.1工程背景和目标 职工档案管理系统主要是对在校教师的个人根本信息以及教学信息进行管理,对教职工提供查询简介信息、教学信息功能;对管理员用户提供查询...

    4周前   
    112    0

    java教案

    设计摘要专业 物联网 课程 Java程序设计课时 1 课型 理论+实践班级 18级物联网教材 零基础学Java-明日科技出版章节 面向对象核心技术

    4年前   
    822    0

    java毕业论文java程序设计

    XXXX学院XXXX毕业论文Java程序设计专业 计算机网路技术 学号XXXX 姓名 XXX 指导教师姓名 XXX 职称 单位 XXX 完成毕业设计(论文)的实践基地 XXX...

    6个月前   
    540    0

    java 50题

    【程序1】    题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔**到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?    //这是一个菲...

    9年前   
    7727    0

    JAVA学习计划

    Java学习计划 好的计划是成功的一半,今天是在创新思维的第一节课,在这门课程的开始,一个有策略的、有目的性的计划是非常必要的,为了在以后的学习中能够达到最好的效果,“坚持”是一把雕刻刀,不...

    10年前   
    9152    0

    java求职信

    java求职信第一篇:java程序员求职信模板尊敬的领导:您好!十分感谢您在百忙之中能翻阅我的自荐信。与公司是一种选择,与我则是一种机会。在上千份大同小异的求职信中,我期望你手中的这份能给您带...

    11年前   
    475    0

    java实习报告心得

    java实习报告心得  作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。这篇文章是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:   作为就业培训,项目的...

    9年前   
    538    0

    《Java趣味编程100例》

    第1章 变幻多姿的图表图表简洁直观,在各种场合得到广泛应用,给人以很强的视觉冲击,经常让人难以忘怀。我们的程序中如果能够灵活地应用图表,一定能给我们的程序增色不少。本章将带你进入变换多姿的图...

    2年前   
    816    0

    java学习笔记

    java学习笔记  jdk(java development kit)  有如下公司或组织开发jdk  sun jdk  ibm jdk  bea jrocket  gun jdk  其中ib...

    10年前   
    575    0

    2018年java实习心得

    java实习心得  这一期的实习,虽然实习的时间不长,但是总体上收获挺大的,学习中我不但有了学习成果的喜悦,而且自己也日渐成熟,有种说不出的喜悦。以下是我在这次实习中的一些感悟和体会:  1....

    6年前   
    402    0

    java实训报告总结

    java实训报告总结  作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。这篇文章是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:   作为就业培训,项目的...

    10年前   
    586    0

    JAVA终端测试规范

     中国移动通信企业标准 QB-╳╳-╳╳╳-╳╳╳╳ JAVA终端测试规范V1.0 Testing Specification for JAVA...

    9年前   
    7589    0

    java学习心得笔记

    java学习心得笔记  j2ee学习笔记   注:框架可以用word菜单中的 “视图/文档结构图” 看到   j2ee模式   value object(值对象) 用于把数据从某个对象/层传递...

    9年前   
    501    0

    迷你DVD管理器java

    实 验 报 告课程名称:面向对象信息系统开发实 验:期中大作业班 级:02学生姓名:李康序 号:34学 号:20181060261 ...

    4年前   
    631    0

    文档贡献者

    z***u

    贡献于2022-08-19

    下载需要 2 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档