课程设计报告
课程名称
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)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档