java课程设计报告.doc
《java课程设计报告.doc》由会员分享,可在线阅读,更多相关《java课程设计报告.doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 淮 海 工 学 院 计算机工程学院课程设计报告设计名称: 面向对象课程设计 选题名称: 文本编辑器的设计与实现 姓 名: 学 号: 专业班级: 计算机科学与技术 D计算机101 系 (院): 计算机工程学院 设计时间: 2012.6.112012.6.24 设计地点: 软件实验室、教室 成绩:指导教师评语: 签名: 年 月 日1课程设计目的面向对象程序设计是一门实践性很强的计算机专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际
2、问题、解决实际问题的能力。2课程设计任务与要求: 设计任务:基本任务是使得学生通过课程设计掌握利用java进行底层的网络应用程序设计、多媒体应用设计、JDBC编程的基本方法,学会综合利用awt包和Swing组件包进行图形用户界面的设计,同时,对java的事件委托模型、异常处理机制、包和接口的概念及多线程技术有比较熟练的把握。 设计要求:1、根据实现的功能,划分出合理的对象类,明确对象类间的关系。 2、为每个对象类设计正确的域和方法,为每个方法设计合理的方法体。同时,为对象类及内部的域和方法运用正确的修饰符,如访问控制符等。 3、编程简练,程序功能齐全,能正确运行。 4、说明书、流程图要清楚。
3、5、课题完成后必须按要求提交课程设计报告,格式规范,内容详实。3课程设计说明书31用户需求分析 在科学技术飞速发展的今天,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。应用JAVA技术实现学生学习实践是可行而必要的工作 。在社会生活中我们经常需要用电脑编写一些文档来保存文件,本课程设计是运用了JAVA软件开发工具开发的应用软件。适合编写记录文件。 训练学生灵活应用所学Java语言的基本知识,熟练的完成问题分析、算法设计、编写程序,求解出指定的问题;训练用系统的观点和软件开发一般规范进行软件开发,巩固、深化学生的理论知识,提高编程水平,并在
4、此过程中培养严谨的科学态度和良好的工作作风; 提高综合运用所学的理论知识和方法独立分析和解决问题的能力运行要求: 由于本程序是运用JAVA语言编成的,所以首先必须在电脑上安装JAVA虚拟机,并对环境变量进行设置。完成JAVA的环境设置后,在集成环境Eclipse中进行编程。 3.2概要设计3.2.1相关类的设计EditorPack ( );setLocatrion ( );setVisible ( );start ( );setFocusable ( );addKeyListrner ( );FrameaddImpl(Componentcomp,Objectconstraints, intin
5、dex) 添加指定的子 ComponentgetContentPane() 返回此窗体的contentPane 对象setLayout(LayoutManagermanager)设置 LayoutManagersetJMenuBar(JMenuBarmenubar) 设置此窗体的菜单栏setIconImage(Imageimage) setDefaultCloseOperation(intoperation)设置用户在此窗体上发起 close 时默认执行的操作设置此 frame 要显示在最小化图标中的图像remove(Componentcomp) 从该容器中移除指定组件图1 Editor继承了
6、JFrame类JComponetJTextComponentJMenuBarJOptionPane JToolBarJTreeJPanelJFileChooserJSplitpaneAbstratButtonJTabbedPaneJScrollPaneJButtonJMenuItemJMenuJTextArea图2 是本设计中用到的JComponent及其扩展类的总括。ActionListeneractionPerformed(ActionEvente) 发生操作时调用Act_StartFlashactionPerformed(ActionEvent E_start)Act_StopFlash
7、actionPerformed(ActionEvent E_stop)Act_TimeractionPerformed(ActionEvent E_time)Act_CopyactionPerformed(ActionEvent e_ji9)Act_PasteactionPerformed(ActionEvent e_ji11)Act_CutactionPerformed(ActionEvent e_ji10)图3 本图显示复制,粘贴,剪贴,动画的显示停止,启动,暂停事件继承ActionListener类JFileChoosergetFileView() 返回当前的文件视图getIcon(Fi
8、lef) 返回此文件或文件类型的图标,这取决于系统getName(Filef) 返回文件名getSelectedFile() 返回选中的文件setCurrentDirectory(Filedir) 设置当前目录setDialogTitle(StringdialogTitle) 设置显示在 JFileChooser 窗口标题栏的字符串FileChooserFilechooser();approveSelection();cancelSelection();图4 FileChoose类继承了JFileChoose类;此文件选择器能够打开和保存文件3.3详细设计3.3.1类或包的加载import j
9、ava.awt.*;import java.awt.event.*;import java.awt.datatransfer.*;import javax.swing.*;import java.io.*;import java.lang.*;3.3.2. 设计一个主类,变量的定义class Notepad extends JFrame private final Color colorvalues = Color.black, Color.blue, Color.red, Color.green ; /定义颜色数组 String styleNames = Bold, Italic ;/定义风
10、格数组 String fontNames = 宋体, 华文行楷, 隶书 ;/字体数组 String sizeString = new String30;/字号数组 int size = new int30;/与字号数组对应的字号整数,用于设置文字大小 private JRadioButtonMenuItem colorItems, fonts; private JCheckBoxMenuItem styleItems; private JTextArea displayText;/定义文本编辑区 private ButtonGroup fontGroup, colorGroup;/字体组,跟字
11、色组 private int style;/字体风格 private JScrollPane scroll;/为文本编辑区提供滚动条 private String selectText = ;/存放文本编辑区中选中的文本内容 private JComboBox styleBox,fontBox,sizeBox;/工具栏 private JPanel toolPanel;/存放工具栏 private int rowNumber = 0; private FileDialog fd = new FileDialog(this); / set up GUI 3.3.3.文件部分操作功能的实现/粘贴的
12、实现 JMenuItem pasteItem = new JMenuItem( 粘贴(P) ); pasteItem.setMnemonic( P ); editMenu.add( pasteItem ); pasteItem.addActionListener( new ActionListener() public void actionPerformed( ActionEvent event ) int position = displayText.getCaretPosition();/获得鼠标当前位置 displayText.insert( selectText,position )
13、;/插入到鼠标当前位置 ); editMenu.addSeparator();/加分隔线 /替换的实现 JMenuItem swapItem = new JMenuItem( 替换(R)) ); swapItem.setMnemonic( R ); editMenu.add( swapItem ); swapItem.addActionListener( new ActionListener() public void actionPerformed( ActionEvent event ) JPanel swapPanel=new JPanel(); JLabel lookupLabel=n
14、ew JLabel(要替换的内容); JTextField inputText=new JTextField(10); JLabel swapLabel=new JLabel(替换为:); JTextField changetoText=new JTextField(10); swapPanel.add(lookupLabel); swapPanel.add(inputText); swapPanel.add(swapLabel); swapPanel.add(changetoText); JOptionPane.showMessageDialog(null,swapPanel); Strin
15、g text=displayText.getText();/获得整个文本内容 String changeText=text.replaceFirst(inputText.getText(),changetoText.getText();/获得替换后的内容 displayText.setText(changeText); ); /全部替换的实现 JMenuItem aswapItem = new JMenuItem( 全部替换(Q)) ); aswapItem.setMnemonic( Q ); editMenu.add( aswapItem ); aswapItem.addActionList
16、ener( new ActionListener() public void actionPerformed( ActionEvent event ) JPanel swapPanel=new JPanel(); JLabel lookupLabel=new JLabel(要替换的内容); JTextField inputText=new JTextField(10); JLabel swapLabel=new JLabel(替换为:); JTextField changetoText=new JTextField(10); swapPanel.add(lookupLabel); swapPa
17、nel.add(inputText); swapPanel.add(swapLabel); swapPanel.add(changetoText); JOptionPane.showMessageDialog(null,swapPanel); String text=displayText.getText();/获得整个文本内容 String changeText=text.replaceAll(inputText.getText(),changetoText.getText();/获得替换后的内容 displayText.setText(changeText); ); editMenu.ad
18、dSeparator();/加分隔线 /插入子菜单 JMenuItem insertItem=new JMenuItem(插入文本(K); insertItem.setMnemonic(K); editMenu.add(insertItem); insertItem.addActionListener( new ActionListener() public void actionPerformed(ActionEvent event) JPanel insertPanel=new JPanel(); JLabel insertLabel=new JLabel(要插入的内容); JTextFi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 课程设计 报告
限制150内