文档库 最新最全的文档下载
当前位置:文档库 › java记事本实验报告

java记事本实验报告

java记事本实验报告
java记事本实验报告

期末考查大作业任务书

课程名称:Java语言程序设计设计实验

题目:简单记事本的设计与实现

学院:管理学院系:信息管理系

专业班级:

学号:

学生姓名:

起讫日期:2015-09-01至2015-12-31

课任教师:郭路生

学院审核(签名):

审核日期:

一、实验内容

完成一个简单的记事本程序。

二、实验要求

1. 实现一个记事本窗口,能够处理关闭处理窗口事件。

2. 记事本可进行文本编辑

3.记事本具有菜单。

4. 具有保存和打开功能。

5. 具有字体大小、风格等功能

6. 具有复制、粘贴功能(可选项)

三、主要仪器设备及耗材

计算机、eclipse

四、主要参考资料

1. 网络教学台平教材材料列出的资料

2. 教材及实验指导

3. 老师演示的视频

4. 网络上相关资料

五、实验步骤

1、程序代码截图

程序源代码(文本版)

import java.awt.event.*;

import java.awt.*;

import java.io.*;

import javax.swing.*;

public class MyJnp extends Frame implements ActionListener { //主界面设置

Menu wenjian = new Menu("文件");

Menu geshi = new Menu("格式");

Menu help = new Menu("帮助");

MenuBar bar = new MenuBar();

MenuItem dakai = new MenuItem("打开");

MenuItem xinjian = new MenuItem("新建");

MenuItem baocun = new MenuItem("保存");

MenuItem tuichu = new MenuItem("退出");

MenuItem zitixuanz= new MenuItem("字体选择");

MenuItem lingcunwei = new MenuItem("另存为");

MenuItem guanyu = new MenuItem("关于记事本");

TextArea bianjiqu = new TextArea();

public MyJnp(){

super("记事本");

bar.add(wenjian);

bar.add(geshi);

bar.add(help);

wenjian.add(xinjian);

wenjian.add(dakai);

wenjian.add(baocun);

wenjian.add(lingcunwei);

wenjian.add(tuichu);

geshi.add(zitixuanz);

help.add(guanyu);

add(bianjiqu);

setMenuBar(bar);

setVisible(true);

setBounds(200,100,800,600);

addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){System.exit(0); }});

}

String path;

public void addActionListener() //添加事件监听 {

dakai.addActionListener(this);

tuichu.addActionListener(this);

xinjian.addActionListener(this);

baocun.addActionListener(this);

lingcunwei.addActionListener(this);

guanyu.addActionListener(this);

zitixuanz.addActionListener(this);

}

public void actionPerformed(ActionEvent e) //事件处理 {

if(e.getSource()== tuichu)

System.exit(0);

else if(e.getSource()==dakai)

{

dakaiwenjian temp = new dakaiwenjian();

bianjiqu.setText(temp.getData());

}

else if(e.getSource()==xinjian)

{

bianjiqu.setText("");

path=null;

}

else if(e.getSource()== baocun)

{

if(path==null){

String s = bianjiqu.getText();

baocunwenjian wen = new baocunwenjian();

wen.saveData(s);

path=wen.getPath();

}

else

{

baoc bao = new baoc(path);

String s = bianjiqu.getText();

bao.saveData(s);

}

}

else if(e.getSource()==guanyu)

{

JOptionPane.showMessageDialog(null, "信管131班 6104113035 郝君","帮助", https://www.wendangku.net/doc/cb11727987.html,RMATION_MESSAGE);

}

else if(e.getSource()==lingcunwei)

{

String s = bianjiqu.getText();

new baocunwenjian().saveData(s);

}

else if(e.getSource()==zitixuanz)

{

new ziti(bianjiqu);

}

}

public static void main(String[] args)

{

new MyJnp().addActionListener();

}

}

class dakaiwenjian{ //打开文件得到字符串并在getData方法中返回字符串

BufferedReader temp;

String data="";

public dakaiwenjian(){

try{

FileDialog s = new FileDialog(new Frame(),"打开",FileDialog.LOAD); s.setVisible(true);

String path1 =s.getDirectory()+"\\"+s.getFile();

temp = new BufferedReader(new FileReader(path1));

String aline;

while((aline=temp.readLine())!=null)

data= data+aline+'\n';

temp.close();

}catch(Exception e ){System.out.println("打开失败");}

}

public String getData(){

return data;

}

}

class baocunwenjian{ //第一次保存和另存为调用的类

BufferedWriter bw ;

String teamp;

public baocunwenjian(){

try{

FileDialog s = new FileDialog(new Frame(),"保存",FileDialog.SAVE); s.setVisible(true);

teamp= s.getDirectory()+s.getFile();

bw= new BufferedWriter(new FileWriter(teamp));

}catch(Exception e){System.out.println("保存失败");}

}

public String getPath()

{

return teamp;

}

public void saveData(String temp1)

{

try{

bw.write(temp1);

bw.close();

}catch(Exception e){System.out.println("保存失败");}

}

}

class baoc { //多次保存类

BufferedWriter bw ;

String teamp;

public baoc(String teamp){

try{

this.teamp= teamp;

bw= new BufferedWriter(new FileWriter(teamp));

}catch(Exception e){System.out.println("保存失败");}

}

public void saveData(String temp1)

{

try{

bw.write(temp1);

bw.close();

}catch(Exception e){System.out.println("保存失败");}

}

}

class ziti extends Dialog implements

ActionListener{ //字体设置类int sty=0;

int size=0;

Label ys ;

Label sz;

Panel pan1 = new Panel();

Panel pan2 = new Panel();

TextField yangshi ;

TextField daxiao;

Font s;

Button queding ;

TextArea ta;

public ziti(TextArea ta){

super(new Frame(),"字体设置");

this.ta=ta;

queding= new Button("确定");

yangshi= new TextField(5);

daxiao = new TextField(5);

ys = new Label("样式:(请输入正整数)");

sz = new Label("大小:(请输入正整数)");

pan1.add(ys);

pan1.add(yangshi);

pan2.add(sz);

pan2.add(daxiao);

pan2.add(queding);

add(pan1,BorderLayout.NORTH);

add(pan2,BorderLayout.SOUTH);

queding.addActionListener(this);

setVisible(true);

setBounds(200,200,300,100);

setResizable(false);

addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ ziti.this.dispose();

}

});

}

public void actionPerformed(ActionEvent

e ){ //字体设置处理

String k;

if(e.getSource()==queding){

if((k=yangshi.getText())!=null)

{

sty=Integer.valueOf(k);

}

if((k=daxiao.getText())!=null)

{

size= Integer.valueOf(k);

}

if(sty>=0&&sty<=100&&size>=0&&size<=100) {

s = new Font("myfont",sty,size);

ta.setFont(s);

}

ziti.this.dispose();

}

}

}

2、程序运行截图

(1)运行软件

记事本能够处理关闭处理窗口事件

记事本中可以进行文本编辑,达成要求2

记事本拥有菜单,完成要求3

文件选项中有保存和打开

将文件保存为文件一

打开文件一

具有打开和保存的功能完成要求4

点击格式-字体选项

样式输入1,大小输入30,字体如下

样式输入2,大小输入50,字体如下

完成要求具有字体大小、风格等功能,完成要求5

六、思考讨论题或体会或对改进实验的建议

具有复制、粘贴功能这个要求我没有实现,最近临近期末,事情实在是有点多,时间实在是不够了,所以我在尝试了修改以后发现没有实现功能,就放弃了制作。觉得很遗憾。

七、参考资料

课程设计—java记事本

import javax.swing.*; import javax.swing.undo.*; import javax.swing.text.*; import javax.swing.event.*; import java.awt.*; import java.awt.event.*; import java.text.*; import java.util.*; import java.awt.datatransfer.*; import java.awt.print.*; import java.io.*; public class Jishiben extends JFrame implements ActionListener { JPopupMenu pm ; JTextArea ta; boolean isNewFile=true; //是否新文件(未保存过的) File currentFile; //当前文件名 String oldValue; //存放编辑区原来的内容,用于比较文本是否有改动//protected UndoManager undo = new UndoManager(); //protected UndoableEditListener undoHandler = new UndoHandler(); JToolBar tbar = new JToolBar(); JCheckBoxMenuItem mt19; public Jishiben() { super("记事本"); //Container ct=getContentPane(); //以下三句是设置编辑区域及滚动条 ta = new JTextArea(); JScrollPane sp = new JScrollPane(ta); add(sp); JMenuBar mb = new JMenuBar(); //设置文件菜单 JMenu mu1 = new JMenu("文件(F)",true); mu1.setMnemonic('F');//设置快捷键按下ALT+F激活打开菜单 JMenuItem mt1 = new JMenuItem("新建(N)",'N'); mt1.setMnemonic('N'); //mt1.addActionListener(new new1()); JMenuItem mt2 = new JMenuItem("打开(O)...",'O'); mt2.setMnemonic('O'); mt2.addActionListener(this); JMenuItem mt3 = new JMenuItem("保存(S)",'S'); //mt3.addActionListener(new save()); mu1.add(mt3); JMenuItem mt4 = new JMenuItem("另存为(A)..."); JMenuItem mt5 = new JMenuItem("页面设置(A)..."); JMenuItem mt6 = new JMenuItem("打印(P)..."); JMenuItem mt7 = new JMenuItem("退出(X)",'X');

JAVA简单记事本程序设计实验报告(带源码).

JAVA程序设计 实验报告 院系:信息工程系 专业:计算机应用技术 班级:11计算机01班 姓名:Civen 任课教师:XXX 实验题目:JA V A简单记事本程序设计

目录 目录 (1) 一、引言 (2) 1.1 课程设计目的 (2) 1.2 题目说明 (2) 1.3 开发工具介绍 (2) 二、总体设计 ......................................................................... - 4 - 2.1系统开发平台.............................................................. - 4 - 2.2 系统流程图 (4) 2.3功能结构图.................................... 错误!未定义书签。 2.4数据库设计.................................... 错误!未定义书签。 三、详细说明 (4) 3.1 系统实施................................................................... - 11 - 四、系统的调试和运行 (9) 五、课程设计总结 (9) 六、参考文献 (9) 附录(源程序代码) (10)

一、引言 1.1 课程设计目的 1) 复习,巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握; 2) 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和 实际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力; 3) 培养学生在项目开发中团队合作精神,创新意识及能力。 1.掌握窗口、菜单等高级组件的应用。 2.掌握Java Swing的使用方法。 3.了解GUI应用程序的创建过程与方法。 1.2 题目说明 课题:学生成绩管理 4.功能要求: 编写一个简单记事本程序,要求包含以下菜单项 文件新建、打开、保存、退出 编辑剪切、拷贝、粘贴、查找 帮助关于 5.实现文件和编辑菜单里的功能 1.3 开发工具介绍 Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同

java记事本课程设计论文附源码

设计题目:记事本课程设计 专业:电子信息科学与技术 班级:电子1202班 学号:20121210606 姓名:王鹏 2015 年7月

XXX学院本科学生课程设计任务书

摘要 目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。此次课程设计主要通过编写一个简单的记事本程序使我们深入理解并实践在本课程中所学的有关JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等内容。此简易记事本程序,使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能。该程序主要用到了Java swing和事件监听等。 关键词记事本程序,java语言,Java swing

目录 摘要 (1) 1 需求分析 (3) 1.1需求分析 (3) 1.2功能设计 (3) 2 概要分析 (4) 2.1概要设计思想 (4) 2.2程序运行界面 (4) 2.3程序模块说明 (4) 2.4流程图 (5) 2.5程序相关说明 (6) 3 程序详细设计与分析 (8) 3.1构建菜单栏及其下拉菜单 (8) 3.2“文件”菜单操作的事件监听 (8) 3.3“编辑”、“格式”等菜单的事件监听 (10) 3.4异常处理 (11) 4 测试分析 (12) 5 源程序清单 (15) 结论 (22) 参考文献 (23)

1 需求分析 1.1需求分析 现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。 1.2功能设计 本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面: 1、菜单中有“文件”,“编辑”,“格式”,“查看”,“帮助”五个主菜单。 2、“文件”有“新建”“打开”“保存”“另存为”“退出”五个子菜单:分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。 3、“编辑”中有“撤销”“剪切”“复制”“粘贴”“全选”“时间/日期”六个字菜单:用于撤销操作,剪切文字,复制文字,粘贴文字。全部选择,插入日期、时间。 4、“格式”菜单中有“自动换行”和“字体”两个子菜单。 5、“查看”菜单只是显示状态栏。 6、“帮助”菜单中只有“关于记事本”子菜单,主要用于显示该程序的名字,版本等信息。

java课程设计策画日历记事本

课程设计说明书 课程: Java程序设计 院系:计算机科学学院 专业班级:计算机科学与技术(2)班 组员:张少华、张天阳 2010年6月 26 日

《Java程序设计》课程设计 ——日历记事本 我们开发了一个实现有日历标记的记事本软件,日历记事本面板由日历和和记事本两部分组成。日历部分可以调节年份,月份,日期,星期。记事本可以实行查看,保存,删除等操作,并且每一步操作都有相应提示。本软件是一个实用性很强,简洁,方便的功能软件。 引言 Java是一种纯面向对象的、网络编程首选的语言。Java技术作为软件开的一种革命性技术,已被列为当今世界信息技术的主流之一。为了适应时代潮流,我们应该加强对Java的学习,更好的掌握这门课程。为此,我们成了一个课程小组,经过小组成的商讨之后,我们决定以“日历记事本”为设题材,借此巩固加深我们对Java 的了解。 本次课程设计的实例虽然比较简单,程序设计也不是很复杂,但在此程序的设计过程也是一个学习过程,更是对复杂程序的一个学习过程,还能培养我们的数抽象能力。因此,我们觉得这次课程设计是非常有意义的,能为我们今后学习面向过程的程序设计作一些铺垫。 1、设计的目的与要求; (1)为用户提供一个简便的日历记事本; (2)对java技术的进一步了解和简单的运用; (3)初步的接触软件工程; 2.设计目的与任务 本课程设计所要求达到的目的和任务:通过Java程序设计的一些重要理论基础来实现“日历记事本”的“日历”和“记事本”的双重功能。并通过此次课程设计的训练,使学生巩固和加深对Java这门课程的理解,通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、编程和使用技术资料的技能,通过实际问题的分析设计、编程和调试,掌握应用软件的分析方法和工程设计方法,能正确阐述设计和实验结果。通过这次课程设计,培养实事求是、认真、严谨的科学态度和刻苦钻研不断创新的精神,逐步建立正确的全局观念。 3.设计方案 3.1 总体设计

用Java实现日历记事本

用Java实现日历记事本

信息与计算科学专业课程设计 用Java实现日历记事本

3. 实验内容 编程实现日历记事本。具体要求如下: (1)该日历可以通过在文本框中输入年份和月份设置日期,也可按年前后翻动,用鼠标左键单击“上年”和“下年”按钮,将当前日历的年份减一和加一。还可以在某年内按月前后翻动,用鼠标左键单击“上月”和“下月”按钮,将日历的月份减一和加一。 (2)左键单击日历上的日期,可以通过右侧的记事本(文本区)编辑有关日志,并将日志保存到一个文件,该文件的名字是由当前日期组成的字符序列。用户可以读取、删除某个日期的日志,也可以继续向某个日志添加新的内容。在保存、删除和读取日志时都会先弹出一个确认对话框,以确认保存、删除和读取操作。 (3)当某个日期有日志时,该日期以粗体16号字显示,表明这个日期有日志;当用户删除某个日期的日志后,该日期恢复原来的外观。

实现效果图(参考)如下: 提示:(1)组件调用public void setFont(Font f)方法可以设置组件上的字体,Font类的构造方法为:public Font(String name,int style,int size),其中name 是字体的名字,style决定字体的样式(如Font.BOLD 表示粗体)size决定字体的大小。(具体请参考JDK API) (2)当左键单击日历上的日期时,如要获取该日期,可通过处理该组件上的鼠标事件来实现。

4.实验步骤、实施过程、关键代码、实验结果及分析说明等 1.CalendarPad类 (1) 进行整体布局,建立日历记事本文件,设置日历卡,把日期按星期顺序排列,并用窗口监视器实现。 (2)用窗口监视器实现,结果如下: 2.Notepad类 (1)对日期的设置和获取,设置信息条,对文本框进行设置,保存日志、删除日志和读取日志按钮的事件实现。 (2)保存日志按钮事件实现如下:

仿windows JAVA 课程设计 记事本

前言 随时着科学技术的快速发展,计算机程序设计早已成为了趋势,JAVA是计算机专业的核心课程,是计算机科学的算法理论基础和软件设计的技术基础。JAVA是实践性很强的课程。课程设计是加强实践能力的一个强有力手段。要求掌握JAVA的应用、编写、上机调试的基本方法。本课程设计就是主要利用java语言编写的一个模仿windows 记事本的较简单的程序,实现了一些基本功能,要求打开文件,读取文件中的文本信息;显示、编辑修改文本信息;实现输入文本文件、控制保存文本信息到指定的文件的功能。 目录 一、需求分析 (1) 二、概要设计 (1) 三、详细设计 (2) 四、系统调试分析 (6) 五、课程设计心得体会 (7) 六、使用说明 (7) 七、参考文献及致 (7) 八、附录(程序源代码) (7)

一、需求分析 该课程设计报告里的简易记事本程序是使用Java程序设计语言编写的,要现记事本的基本功能,参考了windows中记事本的一些功能。要求打开文件,读取文件中的文本信息;显示、编辑修改文本信息;实现新建、打开、保存文本文件以及控制保存文本信息到指定的文件的一些基本功能。 二、概要设计 1.1 系统主要功能 本程序是利用java程序设计语言编写的一个简单的记事本程序。可以通过菜单栏和工具栏实现以下功能:如文件的新建,打开,保存和退出;对文件的编辑,如复制,剪切,粘贴;以及帮助菜单;执行完操作后,能够顺利关闭记事本。 1.2运行环境要求 (1) 实现设计的系统硬件需求 硬件配置的基本要求: * 586以上的计算机 * 32MB以上的存 * 彩色显示器 * 3.5寸高密软盘驱动器 * 光盘驱动器 * 4G以上硬盘空间 * 鼠标 (2) 实现设计的系统软件 * WINDOWS95或WINDOWS98 * Jcreator Pro全套软件 三、详细设计 设计思路:设计一个EditorDemo类,继承自JFrame类,并在EditorDemo类利用JtextPane 创建面板窗口textPane,利用Jlabel创建状态栏 statusBar,利用JFileChooser 创建文件选择器filechooser,利用JMenuBar创建并实例化菜单栏,利用JToolBar创建工具栏,再通过一些具体方法实现各功能键的功能。建立构造函数public EditorDemo();通过该构造函数实现记事本程序的主要功能,运行时在主类过调用该构造函数来实现对记事本程序的基本操作。 1:窗口设计 在主接口中设计一个EditorDemo容器继承自JFrame,并在其中加入菜单栏、工具栏和一个文本域控件。

java课程设计简单记事本开发内附完整代码流程图等

浙江科技学院 经济管理学院 JAVA语言课程设计报告 选题名称简单记事本开发 学生学号 专业班级 学生姓名 学生成绩 指导教师朱军 工作时间2012/06/27——2012/06/29

目录 第一章选题简介 主要利用面向对象的程序设计语言Java来实现简单记事本,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切,查找,替换等功能,区别于一般的记事本,本程序利用了Java swing和事件监听等能够对文字的颜色进行设置。 第二章需求分析 1.系统要实现的目标分析 菜单中有文件,编辑,格式,视图风格,帮助五个主菜单。 (1)“文件”有新建、打开、保存、另存为、退出五个子菜单:分别用于新建文件,打开文件,保存文件,更改存储地址,退出记事本。 (2)“编辑”中有复制、剪切、粘贴、删除、查找、查找下一个、替换、替换下一个、全选、日期/时间十个字菜单:用于复制文字,剪切文字,粘贴文字,删除文字,查找文字,查找下一个文字,替换文字,替换下一个文字,选择文字,添加日期和者时间。 (3)“格式”中有字体样式、字体大小、字体颜色,自动换行。字体样式中又包含了正常、粗体、斜体3中字体样式,可以对文字的字体样式做修改。字体大小中又包含了最大、较大、适中、较小、最小这5个大小范围。字体颜色可以对字体进行颜色上的修改,是字体更加漂亮。自动换行能够实现文档在编辑是需要的自动换行功能。 (4)“视图风格”中有MOTIF风格,默认风格,状态栏。当用户选择MOTIF 风格,软件界面会切换成MOTIF风格界面。当用户选择默认风格,软件界面会切换成默认风格界面。点击状态栏时可以对状态栏进行显示和隐藏。 (5)“帮助”中有帮助主题和关于,可以解决用户在使用记事本中的一些问题。 (6)“快捷键”,在菜单栏下面增加了一排快捷键,可以对稳定进行快速的修改、操作等命令。快捷键主要有新建、打开、保存、复制、剪切、黏贴、删除、查找、字体颜色、帮助主题、退出。 2.对输入输出数据及流程的分析 本次设计中,设计了一个菜单栏和文本内容区。设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser等。JMenu用来制作菜单,JTextPane主要用来输入文本。为了加入颜色的设置,所以加了一个JColorChooser组件。整个记事本分为2块:菜单栏和内容输入区。本程序中首先定义一个myfr类继承JFrame作为最底层容器。Textcontent为程序文本输入区。Menu为菜单栏。AboutDialog为关于对话框。要想记事本完成需求分析中相

java实验报告_计算器_记事本_井字游戏

课程设计报告 实验内容:综合课程设计 相关课程: Java程序设计 学期: 2009-2010学年第2学期 学时学分: 48学时 3学分 专业班级: xxxxxxxx 学号: xxxxxxxxxxx 姓名: xxxxxxx 指导老师: xxx 提交日期: xxxx年 xx月xx日

题目JAVA课程设计 一、实验目的 通过课程设计,主要要达到两个目的,一是检验和巩固专业知识、二是提高综合素质和能力。信科0821班学生的课程设计主要是Java语言程序设计的实现。通过该课程设计,可以将学生课堂上掌握的理论知识与处理数据的业务相结合,以检验我们同学们掌握知识的宽度、深度及对知识的综合运用能力。 二、实验环境 硬件环境CPU:AMD5000+ 双核主板:华硕M2N-X 显示器: 1024x768/256色 操作系统:Windows XP;JDK:jdk-6u18-windows-i586; 运行环境以及调试软件:JCreator Pro 三、实验内容 内容一:设计一个计算器,利用它可以进行简单的四则运算(加、减、乘、除、开方)等,但仅限于十进制下,此外还可以进行(八进制,十进制,十六进制)之间的相互转换。 内容二:设计一个记事本,菜单中要求有文件,编辑,和帮助。文 件中有新建、打开、保存和退出;编辑中有剪切、复制和粘贴;帮助中 显示开发人和版本信息。 内容三:编写tic-tac-toe游戏程序。即 3*3的9个方格子,每人 下一次看谁先连成一行3个 四、算法分析、设计与描述 1.算法分析和设计 内容(1) 算法分析: 首先,设计对输入数字的进行转换,不进行转换操作则默认为十进制,然后进行符号转换操作以及正弦函数等,接着可以进行加减乘除等 运算,添加“C”、“CE”按钮进行退格和清空操作,清空操作显示“0”,最后在帮助中显示开发人信息。 功能及界面设计: 功能1:按下数字键在液晶平上会显示数字,这时计算器最基本的 功能。 功能2:输入数字后,点击进制转换,可转换成二、八进制;按“exp”“log”键,则进行e次幂运算和自然对数运算;按“tan”“cos”“sin”则进行三角函数运算。 功能3:按“+”“-”“*”“/”分别进行四则运算 功能4:在任何时候按下“+/-”键,计算器文本框上的数字置反号。 功能5:第一次按下“运算”键,再按下数字键,将重新输入第二个数字。再次按下“运算”键,将算出前两个数字运算的结果,然后按下数

java课程设计记事本

攀枝花学院课程设计 题目:记事本程序设计 院(系):数学与计算机学院 年级专业: 姓名: 000000 学号: 指导教师: 二〇一三年十二月三十日 攀枝花学院教务处制

攀枝花学院本科学生课程设计任务书

课程设计(论文)指导教师成绩评定表

摘要 目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。按照教学培养计划要求,学生在学习完课本中指定课时的知识后,应安排一定课时的课程设计。其主要目的是使学生深入理解并实践在本课程中所学的有关JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等。故此“记事本”应运而生。 该报告中的程序是简易记事本。使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能,不同之处是本程序能够对文字的颜色进行设置。该程序主要用到了Java swing和事件监听等。 关键字:记事本,Java,Java swing

目录 摘要................................................................ 1 前言 (1) 2 需求分析 (2) 需求分析 (2) 功能设计 (2) 3 概要设计 (3) 程序设计思路 (3) 程序运行界面 (3) 模块说明图 (3) 程序流程图 (5) 程序相关说明 (5) 4 程序详细设计与分析 (6) 初始化组件 (6) .构建菜单栏及其下拉菜单 (6) “文件”菜单的事件监听 (7) “编辑”菜单的事件监听 (7) 5 测试分析 (9) 结论 (11) 参考文献 (12) 附录 (13)

java课程设计方案

JAVA课程设计方案 1.设计目的与任务 本课程设计所要求达到的目的和任务:通过Java程序设计的一些重要理论基础来实现“写字留痕”的“日历”和“记事本”的双重功能。并通过此次课程设计的训练,使学生巩固和加深对Java这门课程的理解,通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、编程和使用技术资料的技能,通过实际问题的分析设计、编程和调试,掌握应用软件的分析方法和工程设计方法,能正确阐述设计和实验结果。通过这次课程设计,培养实事求是、认真、严谨的科学态度和刻苦钻研不断创新的精神,逐步建立正确的全局观念。 设计方案 3.1总体设计 (1)问题定义:创建写字留痕,实现对某日期的事情进行记录这主要功能,并能显示设置的图片,增加美观。 (2)问题分析:通过对“写字留痕”这一题材的分析,我需要四个类来实现其“日历”和“记事本”这两大功能。通过主类N2创建动写字留痕软件的主窗口,该类含有main方法,程序从该类开始执行。再用余下YearMonth 、MonthPane类来显示并改变日期和实现记事本的功能。而ImagePanel类用来显示图片,Music类用来实现音乐的播放控制。 (3)研究意义:通过本次课程设计,我们掌握了Java语言的基本运用,提高了理论结合实际的能力。 3.2设计要求 (1)日记本使用Java语言开发设计。课程的基本功能包括万年历、记事本和辅助功能三个部分。 (2)万年历部分由微调器确定年月,由一组文本框显示日历。年月可选择数据符合逻辑,默认为当前日期。 (3)月历显示应该符合查看习惯,如星期六和星期日分别用不同颜色表示,当日可用特别的字号和颜色 (4)记事本区,记事本容按年月日记录且保存。 (5)微调器应该进行事件设置,以及即时地显示该年月的月历;日期文本框可监听鼠标事件,当单击任何一个日期时,若该日有记事容,则在日记本中显示该日期的记录文字;若该日无记录,记事区保持空白。 (6)日记本应该是开放的,容可按日期增减,保存应即时,删除需谨慎删除记录时,应进行对话框询问确定。

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);

Java记事本

功能:实现了记事本的基本功能,动态界面,文件流,打开文件,修改文件,保存文件,另存为,自定义文件名和格式。本来想实现与数据库连接,但是要实现跨面板调用,不是一件简单的事,所以搁浅了,另外,关于字体的优化类就交给有兴趣的同学们了。 在Eclipse中的结构图如下: 图1 部分运行效果图:

图2 图3 以上图1的类中,有一些是不必要的,是我在制作过程中的测试类,所以在这里只把必要的类附上,运行绝对没有问题: com.yangcong.extra包: 1.OperateJPanel.java package com.yangcong.extra; import java.awt.*; import java.awt.event.*; import java.io.*; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import javax.swing.*; import com.yangcong.tools.*; public class OperateJPanel extends JPanel implements ActionListener,KeyListener { public Boolean flag=false;//用以判断是否显示第三个面板 String diaryName; String diaryDirectory; int riJiNum; BackTool backTool;

Color myColor; JTextArea myPad; JScrollPane jScrollPane; JToolBar gongJuTiao; JButton gongJu1,gongJu2,gongJu3,gongJu4; /*JMenuBar caiDanTiao; JMenu caiDan1; JMenuItem caiDanXianga;*/ BorderLayout borderLayout; JFileChooser jFileChooser; File duFile=null,xieFile=null; InputStreamReader du=null; OutputStreamWriter xie=null; public OperateJPanel() { //手型光标 Cursor myCursor=new CursorMouse().CursorMouse(); borderLayout=new BorderLayout(); this.setLayout(borderLayout); /* caiDanTiao=new JMenuBar();//菜单条 caiDan1=new JMenu("文件"); caiDanXianga=new JMenuItem("打开", new ImageIcon("images/open.png")); caiDan1.add(caiDanXianga); caiDanTiao.add(caiDan1); //this.add(caiDanTiao); */ gongJuTiao=new JToolBar();//工具条 gongJu1=new JButton("打开", new ImageIcon("images/open.png")); gongJu1.setCursor(myCursor); gongJu1.addActionListener(this); gongJu2=new JButton("保存", new ImageIcon("images/save.png")); gongJu2.setCursor(myCursor); gongJu2.addActionListener(this); gongJu3=new JButton("返回", new ImageIcon("images/return.png")); gongJu3.setCursor(myCursor); gongJu3.addActionListener(this); /* * gongJu4=new JButton("列表", new ImageIcon("images/list.png")); gongJu4.setCursor(myCursor); gongJu4.addActionListener(this); */

Java日历记事本课程设计报告

Java 日历记事本课程设计报告 在设计日历记事本时,需要编写6个JAVA源文件:、、、、和 效果图如下 . CalendarWindow 类 import .*; import .*; import .*; import .*; public class CalendarWindow extends JFrame implements ActionListener,MouseListener,FocusListener{ int year,month,day; CalendarMessage calendarMessage; CalendarPad calendarPad; NotePad notePad; JTextField showYear,showMonth; JTextField[] showDay; CalendarImage calendarImage;

String picturename; Clock clock; JButton nextYear,previousYear,nextMonth,previousMonth; JButton saveDailyRecord,deleteDailyRecord,readDailyRecord; JButton getPicture; File dir; Color backColor= ; public CalendarWindow(){ dir=new File("./dailyRecord"); (); showDay=new JTextField[42]; for(int i=0;i<;i++){ showDay[i]=new JTextField(); showDay[i].setBackground(backColor); showDay[i].setLayout(new GridLayout(3,3)); showDay[i].addMouseListener(this); showDay[i].addFocusListener(this); } calendarMessage=new CalendarMessage(); calendarPad=new CalendarPad(); notePad=new NotePad(); Calendar calendar=(); (new Date()); year=; month=+1; day=; (year); (month); (day);

JAVA日历记事本课程设计报告

Java日历记事本课程设计报告 在设计日历记事本时,需要编写6个JA V A源文件:CalendarWindow.java、CalendarPad.java、NotePad.java、CalendarImage.java、Clock.java和CalendarMesssage.java 效果图如下 . CalendarWindow类 import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; import java.io.*; public class CalendarWindow extends JFrame implements ActionListener,MouseListener,FocusListener{ int year,month,day; CalendarMessage calendarMessage; CalendarPad calendarPad; NotePad notePad; JTextField showYear,showMonth; JTextField[] showDay; CalendarImage calendarImage; String picturename; Clock clock; JButton nextYear,previousYear,nextMonth,previousMonth; JButton saveDailyRecord,deleteDailyRecord,readDailyRecord;

JButton getPicture; File dir; Color backColor=Color.white ; public CalendarWindow(){ dir=new File("./dailyRecord"); dir.mkdir(); showDay=new JTextField[42]; for(int i=0;i

最新JAVA课程设计-编写一个记事本程序

1 2 Java语言程序设计B报告 3 4 5 6 题目:编写一个记事本程序 7 8 9 10 一.要求:用图形用户界面实现。能实现编辑、保存、另存为、查找替换11 等功能。提示:使用文件输入输出流。 12 二.课程设计思路。 13 14 设计两个类,一个记事本的类(JSB),具有程序的要求和功能再创建一个15 课设的主类(KESHE),在主类中创建一个JSB类的对象,就可以直接在编译器16 中运行程序。 17 在主界面中设计一个Frame容器,并在其中加入一个下拉18 菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。 19 三.课程设计实现功能结构图。 20

3.1“文件”菜单。 21 22

23 24 3.2“编辑”菜单。 25

26 四.记事本实现功能代码实现。 27

4.1.界面设计。 28 29 主要代码: 30 f=new Frame(s); 31 p1=new TextArea(""); 32 f.setSize(400,600); 33 f.setBackground(Color.white); 34 f.setVisible(true); 35 menubar=new MenuBar(); 36 menu1=new Menu("文件"); 37 menu2=new Menu("编辑"); 38 item1=new MenuItem("新建"); 39 item2=new MenuItem("打开"); 40 item3=new MenuItem("保存"); 41 item4=new MenuItem("另存为"); 42 item5=new MenuItem("退出"); 43 item6=new MenuItem("全选"); 44 item7=new MenuItem("复制"); 45 item8=new MenuItem("剪切");

JAVA简单记事本程序设计实验报告

实验10 JAVA简单记事本程序设计 实验目的 1) 复习,巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握; 2) 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和 实际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力; 3) 培养学生在项目开发中团队合作精神,创新意识及能力。 1.掌握窗口、菜单等高级组件的应用。 2.掌握Java Swing的使用方法。 3.了解GUI应用程序的创建过程与方法。 实验内容 课题:学生成绩管理 1、功能要求: 编写一个简单记事本程序,要求包含以下菜单项 文件新建、打开、保存、退出 编辑剪切、拷贝、粘贴、查找 帮助关于 2、实现文件和编辑菜单里的功能

3.1 系统实施 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("编辑"); menu3=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("粘贴"); item10=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); menu3.add(item10); menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); f.setMenuBar(menubar); 2:功能设计 对每个菜单项进行注册监听。点击不同菜单项时,显示不同界面。 主要代码 item1.addActionListener(this); item2.addActionListener(this);

相关文档
相关文档 最新文档