Java记事本课程设计报告
java课程设计报告记事本

java课程设计报告记事本一、教学目标本课程旨在通过学习Java编程语言,使学生掌握Java编程的基本语法、面向对象编程思想,以及常用数据结构和算法。
通过本课程的学习,使学生能够独立完成简单的Java程序,培养学生的编程能力和逻辑思维能力。
同时,通过实践操作,使学生掌握Java开发工具的使用,提高学生的动手能力。
在学习过程中,培养学生积极思考、合作探讨的学习态度,提高学生的自主学习能力。
二、教学内容本课程的教学内容主要包括Java基本语法、数据类型、运算符、控制结构、数组、字符串、面向对象编程、异常处理、文件操作、集合框架、多线程编程等。
具体到教材,我们将按照教材的章节顺序进行教学,每个章节都会讲解相应的知识点,并通过实例进行讲解和演示。
在讲解过程中,我们会结合实际的编程案例,使学生能够更好地理解和掌握Java编程的知识。
三、教学方法为了提高教学效果,我们将采用多种教学方法进行教学。
首先,通过讲授法,向学生传授Java编程的基本知识和技巧。
其次,通过讨论法,引导学生进行思考和讨论,培养学生的逻辑思维能力。
再次,通过案例分析法,让学生通过分析实际案例,掌握Java编程的实际应用。
此外,我们还会安排实验课,让学生亲自动手编写代码,提高学生的动手能力。
通过多种教学方法的运用,激发学生的学习兴趣,提高学生的学习主动性。
四、教学资源为了保证教学质量,我们将准备丰富的教学资源。
教材和参考书将作为主要的学习材料,我们将选择内容丰富、讲解详细的教材和参考书。
此外,我们还会收集和整理多媒体教学资料,如教学视频、PPT课件等,以丰富教学手段,提高学生的学习兴趣。
在实验课上,我们将使用实验室的计算机进行教学,并配备相应的实验设备,以保证学生能够顺利进行实验操作。
五、教学评估为了全面、客观地评估学生的学习成果,我们将采取多种评估方式。
首先,通过平时表现评估,观察学生在课堂上的参与程度、提问回答等情况,了解学生的学习态度和理解能力。
java课程设计报告记事本

Java课程设计报告:记事本1. 引言记事本是一款常见的文本编辑工具,广泛应用于日常工作和学习中。
本文将介绍一种基于Java语言开发的简易记事本设计方案。
2. 设计思路2.1 界面设计记事本的界面应简洁明了,方便用户进行文本编辑和操作。
可以考虑使用Swing或JavaFX等图形库来创建用户界面。
2.1.1 主窗体记事本的主窗体应包含一个菜单栏和一个文本编辑区域。
菜单栏包含文件、编辑、格式等功能项,可以使用Java提供的菜单组件来实现。
2.1.2 文件操作在菜单栏的文件功能项中,应包含新建、打开、保存、另存为等操作。
这些功能可以通过文件选择对话框来实现。
2.1.3 文本编辑文本编辑区域应支持基本的编辑功能,如复制、粘贴、剪切和撤销等操作。
可以使用Java提供的文本框组件来实现。
2.2 功能设计记事本的功能设计应满足用户的基本需求,如文本编辑、保存和打开文件等。
2.2.1 文本编辑功能用户可以在文本编辑区域输入和编辑文本内容。
可以提供字体、颜色和对齐等格式设置功能。
2.2.2 文件操作功能用户可以通过菜单栏的文件功能项进行文件的新建、打开、保存和另存为等操作。
可以使用Java的文件IO功能来实现。
2.3 实现步骤2.3.1 创建主窗体首先,需要创建一个主窗体,并设置合适的大小和布局。
可以使用Swing或JavaFX提供的窗体组件来实现。
2.3.2 添加菜单栏在主窗体中添加一个菜单栏,并设置合适的菜单和菜单项。
可以使用Java提供的菜单和菜单项组件来实现。
2.3.3 添加文件操作功能在菜单栏的文件功能项中添加新建、打开、保存和另存为等功能,并实现相应的事件处理。
可以使用Java提供的文件选择对话框和文件IO功能来实现。
2.3.4 添加文本编辑功能在主窗体中添加一个文本编辑区域,并提供复制、粘贴、剪切和撤销等编辑功能。
可以使用Java提供的文本框组件和编辑功能来实现。
3. 实现代码以下是一个简单记事本的Java代码示例:import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.*;public class Notepad extends JFrame {private JTextArea textArea;private JFileChooser fileChooser;public Notepad() {setTitle("记事本");setSize(600, 400);setDefaultCloseOperation(EXIT_ON_CLOSE);createMenuBar();textArea = new JTextArea();JScrollPane scrollPane = new JScrollPane(textArea);add(scrollPane, BorderLayout.CENTER);fileChooser = new JFileChooser();setVisible(true);}private void createMenuBar() {JMenuBar menuBar = new JMenuBar();JMenu fileMenu = new JMenu("文件");JMenuItem newMenuItem = new JMenuItem("新建");JMenuItem openMenuItem = new JMenuItem("打开");JMenuItem saveMenuItem = new JMenuItem("保存");JMenuItem saveAsMenuItem = new JMenuItem("另存为");newMenuItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {textArea.setText("");}});openMenuItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {int result = fileChooser.showOpenDialog(Notepad.this);if (result == JFileChooser.APPROVE_OPTION) {File file = fileChooser.getSelectedFile();try {BufferedReader reader = new BufferedReader(new FileReader(file));String line;StringBuilder content = new StringBuilder();while ((line = reader.readLine()) != null) { content.append(line).append("\n");}reader.close();textArea.setText(content.toString());} catch (IOException ex) {ex.printStackTrace();}}}});saveMenuItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {int result = fileChooser.showSaveDialog(Notepad.this);if (result == JFileChooser.APPROVE_OPTION) {File file = fileChooser.getSelectedFile();try {BufferedWriter writer = new BufferedWriter(new FileWriter(file));writer.write(textArea.getText());writer.close();} catch (IOException ex) {ex.printStackTrace();}}}});saveAsMenuItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {int result = fileChooser.showSaveDialog(Notepad.this);if (result == JFileChooser.APPROVE_OPTION) {File file = fileChooser.getSelectedFile();try {BufferedWriter writer = new BufferedWriter(new FileWriter(file));writer.write(textArea.getText());writer.close();} catch (IOException ex) {ex.printStackTrace();}}}});fileMenu.add(newMenuItem);fileMenu.add(openMenuItem);fileMenu.add(saveMenuItem);fileMenu.add(saveAsMenuItem);menuBar.add(fileMenu);setJMenuBar(menuBar);}public static void main(String[] args) {SwingUtilities.invokeLater(new Runnable() {@Overridepublic void run() {new Notepad();}});}}4. 总结本文介绍了一种基于Java语言开发的简易记事本设计方案。
JAVA课程设计-编写一个记事本程序

JAVA课程设计-编写一个记事本程序Java语言程序设计B报告题目:编写一个记事本程序一.要求:用图形用户界面实现。
能实现编辑、保存、另存为、查找替换等功能。
提示:使用文件输入输出流。
二.课程设计思路。
设计两个类,一个记事本的类(JSB),具有程序的要求和功能再创建一个课设的主类(KESHE),在主类中创建一个JSB类的对象,就可以直接在编译器中运行程序。
在主界面中设计一个Frame容器,并在其中加入一个下拉菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。
三.课程设计实现功能结构图。
3.1“文件”菜单。
3.2“编辑”菜单。
四.记事本实现功能代码实现。
4.1.界面设计。
主要代码:f=new Frame(s);p1=new TextArea("");f.setSize(400,600);f.setBackground(Color.white);f.setVisible(true);menubar=new MenuBar(); menu1=new Menu("文件"); menu2=new Menu("编辑"); item1=new MenuItem("新建"); item2=new MenuItem("打开"); item3=new MenuItem("保存"); item4=new MenuItem("另存为"); item5=new MenuItem("退出"); item6=new MenuItem("全选"); item7=new MenuItem("复制");item8=new MenuItem("剪切"); item9=new MenuItem("粘贴");menu1.add(item1);menu1.add(item2);menu1.add(item4); menu1.add(item5); menu2.add(item6); menu2.add(item7); menu2.add(item8); menu2.add(item9); menubar.add(menu1); menubar.add(menu2);f.setMenuBar(menubar);程序代码实现截图:4.2功能代码详细设计。
java记事本实验报告

java记事本实验报告篇一:JAVA记事本实验报告(含源代码运行结果)嘉应学院计算机学院系/班别:指导老师:课程名称:实验内容:学生学号:学生姓名:实验地点:实验类型:实验时间:实验报告计算机学院1203班 Java语言程序设计用Java编写记事本第十四周至第十七周实验要求:能够通过使用JDK1.6安装开发windows 桌面应用程序。
实验目的:熟悉事件触发和事件监听以及组件和容器的界面安排,能够用java设计一个仿windows的标准型记事本。
实验过程描述:一、实验环境:网络实验室二、实验设备:PC机, 网络三、实验平台:winxp. JDK1.6过程描述:1.首先,安装JDK1.62.打开开始-》运行->输入cmd进入dos->cd 路径(原程序的路径)->javac NotepadTest.java(编绎)->java NotepadTest运行四、编写程序:import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ;import ;import ;import ;import ;import ;import ;import ;import ;import ; import ; import ; import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ; import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;class MyTransferHandler extends TransferHandler { JTextArea text=null;public MyTransferHandler(JTextArea text){this.text=text;}public boolean canImport(JComponent c, DataFlavor[] flavors)//在拖放操作期间重复调用此方法,判断是否可以输入{for (int i = 0; i if (return true;}}return false;}public boolean importData(JComponent com,Transferable t){try{篇二:记事本的设计与实现Java版实验报告报告编号:第九组JAVA课程设计报告记事本的设计与实现学生姓名:指导教师:所在系:电子信息系所学专业:计算机科学与技术年级:XX年12月目录摘要 ................................................ ................................................... .. (1)第1章前言 ................................................ ................................................... . (2)1.1研究背景................................................. ................................................... . (2)1.2 开发意义................................................. ................................................... (2)1.3 本文的组织结构 ................................................ ................................................... . (2)第2章需求分析 ................................................ ................................................... . (3)2.1系统功能分析 ................................................ ................................................... (3)2.2 设计目标................................................. ................................................... (4)第3章概要设计 ................................................ ................................................... . (5)第4章详细设................................................... ..................... (7)4.1文件模块的详细设计 ................................................ ................................................... (7).............................................. (7).............................................. (8).............................................. (8).............................................. (9)4.2编辑模块的详细设计 ................................................ ................................................... (9).............................................. (9) (10).............................................. . (11).............................................. . (11).............................................. . (12).............................................. . (12).............................................. . (13)4.3格式模块的详细设计 ................................................ ................................................... . (14)第5章系统测试 ................................................ ................................................... (15)5.1 程序主界面.................................................................................................... (15)5.2文件界面................................................. ................................................... .. (15)5.3编辑菜单................................................. ................................................... .. (17)第6章小结 ................................................ ................................................... .. (27)参考文献 ................................................ ................................................... . (27)摘要本组课程设计的课题是“记事本的设计与实现”,设计的记事本系统应具有新建、打开、保存、剪切、复制、粘贴、查找、字体设置等基本功能,满足用户对文件的处理,文本文档的编辑和字体的设置等要求。
java记事本实验报告

java记事本实验报告篇一:JAVA记事本实验报告(含源代码运行结果)嘉应学院计算机学院系/班别:指导老师:课程名称:实验内容:学生学号:学生姓名:实验地点:实验类型:实验时间:实验报告计算机学院1203班 Java语言程序设计用Java编写记事本第十四周至第十七周实验要求:能够通过使用JDK1.6安装开发windows 桌面应用程序。
实验目的:熟悉事件触发和事件监听以及组件和容器的界面安排,能够用java设计一个仿windows的标准型记事本。
实验过程描述:一、实验环境:网络实验室二、实验设备:PC机, 网络三、实验平台:winxp. JDK1.6过程描述:1.首先,安装JDK1.62.打开开始-》运行->输入cmd进入dos->cd 路径(原程序的路径)->javac NotepadTest.java(编绎)->java NotepadTest运行四、编写程序:import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ;import ;import ;import ;import ;import ;import ;import ;import ;import ; import ; import ; import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ; import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;import ;class MyTransferHandler extends TransferHandler { JTextArea text=null;public MyTransferHandler(JTextArea text){this.text=text;}public boolean canImport(JComponent c, DataFlavor[] flavors)//在拖放操作期间重复调用此方法,判断是否可以输入{for (int i = 0; i if (return true;}}return false;}public boolean importData(JComponent com,Transferable t){try{篇二:记事本的设计与实现Java版实验报告报告编号:第九组JAVA课程设计报告记事本的设计与实现学生姓名:指导教师:所在系:电子信息系所学专业:计算机科学与技术年级:XX年12月目录摘要 ................................................ ................................................... .. (1)第1章前言 ................................................ ................................................... . (2)1.1研究背景................................................. ................................................... . (2)1.2 开发意义................................................. ................................................... (2)1.3 本文的组织结构 ................................................ ................................................... . (2)第2章需求分析 ................................................ ................................................... . (3)2.1系统功能分析 ................................................ ................................................... (3)2.2 设计目标................................................. ................................................... (4)第3章概要设计 ................................................ ................................................... . (5)第4章详细设................................................... ..................... (7)4.1文件模块的详细设计 ................................................ ................................................... (7).............................................. (7).............................................. (8).............................................. (8).............................................. (9)4.2编辑模块的详细设计 ................................................ ................................................... (9).............................................. (9) (10).............................................. . (11).............................................. . (11).............................................. . (12).............................................. . (12).............................................. . (13)4.3格式模块的详细设计 ................................................ ................................................... . (14)第5章系统测试 ................................................ ................................................... (15)5.1 程序主界面.................................................................................................... (15)5.2文件界面................................................. ................................................... .. (15)5.3编辑菜单................................................. ................................................... .. (17)第6章小结 ................................................ ................................................... .. (27)参考文献 ................................................ ................................................... . (27)摘要本组课程设计的课题是“记事本的设计与实现”,设计的记事本系统应具有新建、打开、保存、剪切、复制、粘贴、查找、字体设置等基本功能,满足用户对文件的处理,文本文档的编辑和字体的设置等要求。
Java记事本程序课程设计报告

方法部分内容如下:
关闭时提示是否退出。
int option=JOptionPane.showConfirmDialog(
Note.this, "确定退出程序? ", "提示",JOptionPane.YES_NO_CANCEL_OPTION);
(4).“作者”菜单中有关于记事本程序的作者信息。
Java记事本程序是:图形界面、流与文件等技术的综合应用。
图形界面的实现:考虑到简单、实用、高效等特点,大部分选择了awt来完成实现,其中也有swing组件。文本编辑区就选用了TaxtArea作为主要的部件。
文件操作的实现:利用了字符文件流FileReader和FileWriter类来实现。
本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面:
(1).菜单中有“文件”,“编辑”,“作者”三个主菜单。
(2).“文件”有“新建”“打开”“保存”“退出”四个子菜单:分别用于新建文件,打开文件,保存文件,退出记事本。
(3).“编辑菜单”有“查找、替换、时间日期”功能。
Label lReplace=new Label("替换字符串");
TextField tFind=new TextField(10);
TextField tReplace=new TextField(10);
Button bFind=new Button("查找");
Button bReplace=new Button("替换");
MyFindDialog findDlg=new MyFindDialog(this,tf);
java课程设计记事本设计报告
java课程设计记事本设计报告一、教学目标本课程旨在通过Java编程语言实现一个记事本应用程序,让学生掌握Java编程的基本概念和方法,培养学生的编程能力和解决问题的能力。
1.理解Java编程语言的基本语法和结构。
2.掌握Java编程中的数据类型、变量、运算符、控制语句等基本概念。
3.学习Java中的类和对象的概念,理解封装、继承和多态的原理。
4.熟悉Java中的常用类库和方法。
5.能够运用Java编程语言编写简单的程序。
6.能够使用Java编程语言实现一个记事本应用程序,包括文本的增删改查等功能。
7.能够分析并解决编程过程中遇到的问题。
情感态度价值观目标:1.培养学生的团队合作意识和沟通能力,通过小组合作完成项目。
2.培养学生的创新思维和解决问题的能力,鼓励学生进行自主学习和探索。
3.培养学生的学习兴趣和自信心,让学生感受到编程的乐趣和成就感。
二、教学内容本课程的教学内容主要包括Java编程语言的基本概念和方法,以及记事本应用程序的设计和实现。
1.Java编程语言的基本概念和方法:–数据类型、变量、运算符、控制语句等基本概念。
–类和对象的概念,封装、继承和多态的原理。
–常用类库和方法的使用。
2.记事本应用程序的设计和实现:–用户界面设计:创建文本框、按钮等控件,实现用户输入和显示功能。
–文件操作:实现文件的打开、保存、关闭等功能,使用文件读写技术。
–文本处理:实现文本的增删改查等功能,使用数据结构和算法进行文本管理。
三、教学方法本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等,以激发学生的学习兴趣和主动性。
1.讲授法:教师通过讲解Java编程语言的基本概念和方法,以及记事本应用程序的设计和实现,引导学生掌握相关知识。
2.讨论法:学生分组进行讨论,分享自己的理解和思路,互相学习和交流。
3.案例分析法:分析实际案例,让学生了解记事本应用程序的实际应用场景和设计思路。
4.实验法:学生通过编写代码和进行实验,实现记事本应用程序的功能,培养学生的实际编程能力和解决问题的能力。
记事本java程序设计报告
记事本java程序设计报告~ 第1学期《Java程序设计》课程报告项目:日历记事本专业:计算机科学与技术学号: 10570235姓名:常兆华班级:计算机2班分数:项目说明目录第一部分、项目整体概述 (3)页第二部分、我的任务 (5)页第三部分、代码和详细注释 (6)页第四部分、心得体会 (14)页第一部分、项目整体概述日历记事本----------带有日程提醒功能的日历。
2.显示信息:用户能够看到这个月的信息,包括年份、日期等。
点击翻页按钮能够查询前一个月的日期,也能够向后翻页查询下一个月的日期。
同样,能够根据年份查询不同年份的日期。
日期的显示有一些优化,用户不但能够查询到本月份的信息,还能够根据上个月与下个月的日期填充来方便查询日期和星期。
3.定时提醒:用户能够针对某一天来添加、删除和编辑这一天的日程提醒信息当系统时间和提醒时间相吻合时,给出具有提示信息的对话框。
4.查询信息:用户能够查询到某个月的所有的提示信息。
日历记事本共有4个java源文件。
CalendarPad.java该java文件生成的类负责创立本日历记事本程序主窗口。
该类含有main方法,程序从该类开始执行。
Year.java该文件负责创立管理年份的对象。
Month.java该文件负责创立管理月份的类对象。
NotePad.java该文件负责创立记事本。
截图:初始界面可输入年份查看相应的日历与记事本第二部分、我的任务具体任务:资料查找,汇总及需求分析,负责日历的编写,和板块的布局输出等。
编写大致思路:我主要负责这个项目中日历的编写和输出显示的一部分。
经过调查自己电脑中的日历记事本和大家纸质的日历记事本,我知道若想完整地显示一个月的信息至少需要一个首先需要一个7*7的网格,要用到GridLayout网格设置语言。
其中每一列的顶层能够称它为title“标题”,也就是显示“星期几”,表头显示这个月所在的年份与月份。
随后对日期进行编号,判断闰平年、大小月等必要的程序。
《Java》课程设计》记事本
《Java课程设计》记事本课程设计报告书目录一、设计课题二、设计目的三、操作环境四、设计场所(机房号、机器号或自己机器)五、设计过程(设计内容及主要程序模块)六、本次设计中用到的课程知识点(列出主要知识点)七、设计过程中遇到的问题及解决办法八、程序清单五、设计过程(设计内容及主要模块,不少于3000字)1.设计要求1)界面设计2)功能实现(1)文件菜单:新建、打开、保存、另存为、退出等。
(2)其中新建菜单项可以新建一个记事本程序;打开菜单项可以打开一个用户指定的文本文件,并将其内容显示在记事本的文本区域;保存和另存为菜单项可分别实现文件的保存和另存为3)编辑菜单:复制、剪切和粘贴等4)帮助菜单:软件版本信5)右键弹出快捷菜单2.总体设计1)功能模块图:图一功能模块图2)功能描述1、打开记事本。
首先是标准型的记事本,拥有文件、编辑。
格式和帮助。
如图1所示:图1标准型记事本界面2、在标准型的记事本界面中,进行的新建一个本件名字叫新记事本。
如图2记事本文件帮助新建打开保存另存为退出复制剪切粘贴编辑关于记事本右键快捷格式字体颜色图2新建记事本功能3、用打开文件打开刚刚新建的新记事本。
如图三所示。
图3—打开文件4、点击退出即可退出,如图4所示:图4—退出记事本5、点击帮助可以看到有关记事本的相关信息,其中有作者名、版本、许可条款、隐私声明等必要信息。
如图5所示:图5—帮助相关信息6、右键可实现复制、粘贴、剪切、清除等常用功能,方便用户可以快捷方便的使用记事本。
如图6所示:图6—右键功能7、编辑也可实现制、粘贴、剪切、清除等常用功能,方便用户选择自己适合的方式,自由选择方便的快捷方式使用。
如图7:图7—编辑八、程序清单package test;import java.io.File;import java.io.*;import java.awt.event.*;import java.awt.Toolkit;import java.awt.*;import javax.swing.*;import javax.swing.filechooser.*;public class Notebook extends JFrame implements ActionListener,ItemListener{ //组件创建JButton b_save,b_close; //按钮JTextArea textArea; //文本框File tempFile; //文件JPanel jp; //面板JMenu file,edit,style,help; //菜单JMenuItemf_new,f_open,f_save,f_close,f_saveas,e_copy, e_paste,e_cut,e_clear,e_selectAll,e_find,e_rep lace,s_font,s_color,h_editor,h_help; //菜单条JMenuBar jmb;JScrollPane jsp; //滚动面板JPopupMenu popUpMenu = new JPopupMenu(); //右键弹出式菜单JLabel stateBar;//标签JLabel jl,jj;JFileChooser jfc = new JFileChooser(); //文件选择JMenuItemje_copy,je_paste,je_cut,je_clear,je_selectAll,je _find,je_replace; //弹出式菜单条public Notebook(){jfc.addChoosableFileFilter(new FileNameExtensionFilter("文本文件(*.txt)","txt"));jmb = new JMenuBar();textArea = new JTextArea();jsp = new JScrollPane(textArea);file = new JMenu("文件");edit = new JMenu("编辑");style = new JMenu("格式");help = new JMenu("帮助");je_copy = new JMenuItem("复制(C) ");je_paste = new JMenuItem("粘贴(P) ");je_cut = new JMenuItem("剪切(X) ");je_clear = new JMenuItem("清除(D) ");je_selectAll = new JMenuItem("全选(A) ");je_find = new JMenuItem("查找(F) ");je_replace = new JMenuItem("替换(R) ");je_copy.addActionListener(this); //给弹窗式的各组件添加监听器je_paste.addActionListener(this);je_cut.addActionListener(this);je_clear.addActionListener(this);je_selectAll.addActionListener(this);je_find.addActionListener(this);je_replace.addActionListener(this);//给界面上方的菜单条添加监听器f_new = new JMenuItem("新建(N)");f_new.setAccelerator(KeyStroke.getKeyS troke('N',InputEvent.CTRL_MASK,false)); //设置带修饰符快捷键f_new.addActionListener(this);f_open = new JMenuItem("打开(O)");f_open.setAccelerator(KeyStroke.getKey Stroke('O',InputEvent.CTRL_MASK,false));f_open.addActionListener(this);f_save = new JMenuItem("保存(S)");f_save.setAccelerator(KeyStroke.getKey Stroke('S',InputEvent.CTRL_MASK,false));f_save.addActionListener(this);f_saveas = new JMenuItem("另存为");f_saveas.setAccelerator(KeyStroke.getKe yStroke(KeyEvent.VK_S,InputEvent.CTRL_ MASK|InputEvent.SHIFT_MASK));f_saveas.addActionListener(this);f_close = new JMenuItem("退出(W)");f_close.setAccelerator(KeyStroke.getKey Stroke('W',InputEvent.CTRL_MASK,false));f_close.addActionListener(this);e_copy = new JMenuItem("复制(C)");e_copy.setAccelerator(KeyStroke.getKey Stroke('C',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_paste = new JMenuItem("粘贴(V)");e_paste.setAccelerator(KeyStroke.getKeyStro ke('V',InputEvent.CTRL_MASK,false));e_paste.addActionListener(this);e_cut = new JMenuItem("剪切(X)"); e_cut.setAccelerator(KeyStroke.getKeyStroke ('X',InputEvent.CTRL_MASK,false));e_cut.addActionListener(this);e_clear = new JMenuItem("清除(D)");e_clear.setAccelerator(KeyStroke.getKeyStrok e('D',InputEvent.CTRL_MASK,false));e_clear.addActionListener(this);e_selectAll = new JMenuItem("全选(A)");e_selectAll.setAccelerator(KeyStroke.getKey Stroke('A',InputEvent.CTRL_MASK,false));e_selectAll.addActionListener(this);e_find = new JMenuItem("查找(F)");e_find.setAccelerator(KeyStroke.getKeyStrok e('F',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_replace = new JMenuItem("替换(R)");e_replace.setAccelerator(KeyStroke.getK eyStroke('R',InputEvent.CTRL_MASK,false)) ;e_replace.addActionListener(this);s_font = new JMenuItem("字体(T)");s_font.setAccelerator(KeyStroke.getKeyStrok e('T',InputEvent.CTRL_MASK,false));s_font.addActionListener(this);s_color = new JMenuItem("颜色(C)...");s_color.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_C,InputEvent.CTRL_MAS K | InputEvent.SHIFT_MASK));s_color.addActionListener(this);h_editor = new JMenuItem("关于记事本");h_editor.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_E,InputEvent.CTRL_MAS K));h_editor.addActionListener(this);h_help = new JMenuItem("帮助信息(H)");h_help.setAccelerator(KeyStroke.getKeyStrok e(KeyEvent.VK_I,InputEvent.CTRL_MASK) );h_help.addActionListener(this);//添加右键弹出式菜单popUpMenu.add(je_copy);popUpMenu.add(je_paste);popUpMenu.add(je_cut);popUpMenu.add(je_clear);popUpMenu.addSeparator();popUpMenu.add(je_selectAll);popUpMenu.add(je_find);popUpMenu.add(je_replace);//编辑区鼠标事件,点击右键弹出"编辑"菜单textArea.addMouseListener(new MouseAdapter(){public void mouseReleased(MouseEvent e) {if(e.getButton() == MouseEvent.BUTTON3)popUpMenu.show(e.getComponent(), e.getX(), e.getY());} //e.getComponent()和textArea具有同等效果public void mouseClicked(MouseEvent e){if(e.getButton() == MouseEvent.BUTTON1)popUpMenu.setVisible(false);}});this.setJMenuBar(jmb);this.setTitle("记事本程序");file.add(f_new); //添加文件菜单组件file.add(f_open);file.addSeparator(); //加分隔线file.add(f_save);file.add(f_saveas);file.addSeparator();file.add(f_close);edit.add(e_copy); //添加编辑菜单组件edit.add(e_paste);edit.add(e_cut);edit.add(e_clear);edit.addSeparator();edit.add(e_selectAll);edit.add(e_find);edit.add(e_replace);style.addSeparator();style.add(s_font);style.add(s_color);jmb.add(file); //添加格式菜单组件jmb.add(edit);jmb.add(style);jmb.add(help);help.add(h_editor); //添加帮助菜单组件help.add(h_help);//textArea.setWrapStyleWord(true); //设置在单词过长的时候是否要把长单词移到下一行。
课程设计java记事本
课程设计 java记事本一、课程目标知识目标:1. 理解Java基本语法结构,掌握面向对象编程的基本概念;2. 学会使用Java编写简单的记事本程序,理解程序的基本结构;3. 了解Java事件处理机制,掌握基本的用户界面设计方法。
技能目标:1. 能够运用所学知识,独立编写、调试和运行Java记事本程序;2. 培养良好的编程习惯,编写结构清晰、易于维护的代码;3. 学会使用集成开发环境(IDE)进行Java程序开发,提高编程效率。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习积极性,增强自信心;2. 培养学生的团队协作能力,学会与他人分享和交流编程经验;3. 引导学生认识到编程在生活中的实际应用,培养创新意识和实践能力。
课程性质:本课程为实践性较强的Java编程课程,通过编写记事本程序,让学生掌握Java编程的基本知识和技能。
学生特点:学生处于初中或高中年级,具备一定的计算机操作能力和逻辑思维能力。
教学要求:结合学生特点,注重实践操作,激发学生的学习兴趣,培养编程技能,同时关注情感态度价值观的培养。
在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. Java基本语法:变量、数据类型、运算符、控制语句(条件语句、循环语句);2. 面向对象编程:类与对象、构造方法、封装、继承、多态;3. Java事件处理机制:事件监听器、事件适配器、事件处理方法;4. 用户界面设计:窗口、标签、文本框、按钮等组件的使用;5. Java文件操作:文件的读取与写入、文件的保存与打开;6. 集成开发环境(IDE)的使用:Eclipse或IntelliJ IDEA的基本操作与调试技巧。
教学大纲:第一周:Java基本语法及控制语句学习;第二周:面向对象编程基本概念及实现;第三周:Java事件处理机制及用户界面设计;第四周:Java文件操作及记事本程序编写;第五周:实践与调试,完善记事本程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
XXXXXXXX计算机学院课程设计报告书学生姓名:XXXX学院:计算机学院专业班级:软件工程专业课程:JAVA语言程序设计指导教师:2014 年6 月13 日目录第1章系统设计目的 (1)第2章系统实现思路 (2)第3章系统详细设计 (3)第4章系统调试运行 (7)第5章课程设计体会 (8)第6章参考文献 (9)第7章附录 (10)第1章系统设计目的1.1复习,巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握;1.2课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力;1.3培养学生在项目开发中团队合作精神,创新意识及能力1.4掌握JAVA语言常用类包及其常用方法和JAVA语言基本语法1.5掌握JAVA语言常用类包及其常用方法和JAVA语言基本语法第2章系统实现思路2.1总体功能实现图2.1总体功能实现图2.2记事本2.2菜单操作流程图图2.2“文件”菜单操作流程图开“文件”“文件”菜单新建退出File=null打开用JFileChooser()选择所有打开文件路径用unfold()读取所选的文件内容到记事本保存用sava()保存文件用JFileChooser()选择文件另存的路径用sava()保存文件退出或关闭文件是否修用sava()保存文件 Y结束N用close()关闭文件开始“编辑”菜单剪切全选设置修改标签,text.cut()复制用text.copy()实现粘贴设置修改标签,text.paste()删除设置修改标签,text.replaceRange("", start,end);查找替换用FindAndReplace{}方法实现用text.selectAll()实现退出或关闭文件是否修用sava()保存文件并结束用close()关闭文件YN图2.3 “编辑”菜单操作流程图开始“帮助”菜单关于记事本显示记事本的有关信息结束图2.4 “帮助”菜单操作流程图第3章系统详细设计3.1界面设计创建一个下拉菜单和文本域,在文本域中显示编辑的文件信息。
主要代码:JMenuBar menub=new JMenuBar();JTextArea text=new JTextArea();JMenu files=new JMenu("文件(F)");JMenu edit=new JMenu("编辑(E)");JMenu formats=new JMenu("格式(O)");JMenu help=new JMenu("帮助(H)");JMenuItem newFile=new JMenuItem("新建(N)");JMenuItem open=new JMenuItem("打开(O)...");JMenuItem save=new JMenuItem("保存(S)");JMenuItem exit=new JMenuItem("退出(X)");JMenuItem cut=new JMenuItem("剪切(T)");JMenuItem copy=new JMenuItem("复制(C)");JMenuItem paste=new JMenuItem("粘贴(P)");JMenuItem selectAll=new JMenuItem("全选(A)");JMenuItem color = new JMenuItem("字体颜色(C)...");JMenuItem about=new JMenuItem("关于记事本(A)");3.2窗口大小主要代码:Notebook(String name){super(name);=name;int x,y;Dimension size=Toolkit.getDefaultToolkit().getScreenSize();x=(size.width-600)/2;y=(size.height-400)/2;setSize(600,400);setLocation(x,y);setMinimumSize(new Dimension(250,150));setDefaultCloseOperation(EXIT_ON_CLOSE);}3.3定义快捷键主要代码:files.setMnemonic('F');edit.setMnemonic('E');formats.setMnemonic('O');help.setMnemonic('H');newFile.setMnemonic('N');open.setMnemonic('O');save.setMnemonic('S');exit.setMnemonic('X');cut.setMnemonic('T');copy.setMnemonic('C');paste.setMnemonic('P');selectAll.setMnemonic('A');color.setMnemonic('C');about.setMnemonic('A');newFile.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_ MASK));open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MA SK));save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MAS K));exit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q,InputEvent.CTRL_MAS K));cut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK) );copy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MAS K));paste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MA SK));selectAll.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_ MASK));3.4功能代码新建:if(source==newFile){text.setText("");th.setTitle(name);openedPath=null;opened=false;}退出:else if(source==exit){System.exit(0);}全选:else if(source==selectAll)text.selectAll();剪贴:else if(source==cut)text.cut();复制:else if(source==copy)text.copy();粘贴:else if(source==paste)text.paste();关于:else if(source==about){JFrame about = new JFrame("记事本");JLabel label1 = new JLabel("记事本");JLabel label2 = new JLabel("作者:XX ");JLabel label3 = new JLabel("电子邮箱:XXXXXXXXXX "); }保存:else if(source==save){String savePath=openedPath;if(savePath==null){FileDialog saveFile=new FileDialog(th,"保存文件...",FileDialog.SAVE);saveFile.setVisible(true);savePath=saveFile.getDirectory()+saveFile.getFile();}try{FileOutputStream fos=new FileOutputStream(savePath);fos.write(text.getText().getBytes());fos.close();}catch(Exception ex){ex.printStackTrace();}if(source==save)openedPath=savePath;}打开:if(source==open){FileDialog openFile=new FileDialog(th,"打开文件...",FileDialog.LOAD);openFile.setVisible(true);String filePath=openFile.getDirectory()+openFile.getFile();try{FileInputStream fis=new FileInputStream(filePath);byte [] content=new byte[fis.available()];fis.read(content);text.setText(new String(content));text.setCaretPosition(0);if(openFile.getFile()!=null){th.setTitle(openFile.getFile()+name);openedPath=filePath;opened=true;}fis.close();}catch(Exception ex){ex.printStackTrace();}opened=true;}颜色:else if(source==color){Color color=JColorChooser.showDialog(text, "选择颜色",Color.BLACK);text.setForeground(color);}第4章系统调试运行4.1 “文件”运行状况图4.1 文件图4.2 编辑图4.3 格式图4.4 帮助第5章课程设计体会这次综合实验我很早就开始准备了,在代码上花费的时间也很多。