JAVA小应用程序Applet设计(计算器)实验报告(附完整代码)

合集下载

java-applet程序设计

java-applet程序设计

实验九实验名称:Applet应用程序设计实验目的:了解Applet运行机制,掌握Java Applet程序结构和开发过程,了解Applet与浏览器的通信。

实验环境:PC机一台,软件Windows 7 +JDK编译器+JCreator编译环境+MyEclipse编译环境。

实验内容和步骤:1、显示"Welcome to Java Programming!"(源程序参见实验指导书)HTML 代码:<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>WelcomeApplet.html</title><meta http-equiv="keywords"content="keyword1,keyword2,keyword3"> <meta http-equiv="description"content="this is my page"><meta http-equiv="content-type"content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> </head><body><applet code="WelcomeApplet.class"width="260"height="100"></applet></body></html>HTML 代码:<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>WelcomeApplet3.html</title><meta http-equiv="keywords"content="keyword1,keyword2,keyword3"> <meta http-equiv="description"content="this is my page"><meta http-equiv="content-type"content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> </head><body><applet code="WelcomeApplet3.class"width="260"height="100"></applet></body></html>2、编写Applet显示字符串“This is HEBUT.”,设置字符串的显示位置、字体、大小和颜色。

实验12 Java Applet

实验12 Java Applet

实验12 Java Applet实验内容Applet 生命周期一、Applet 生命周期实验目的:(1) 掌握JavaApplet 程序的基本结构和编写方法;(2) 了解Applet 的生命周期和运行过程。

实验任务1:编写Applet 程序实现init()、start()、stop()、destory() 方法,并观察其运行过程。

[参考程序](4)保存所有文件,运行该Applet 程序。

使用缺省Applet查看器类, 可观察运行结果如图12-1 所示。

图12-1思考(l) 运行AppletLifeCycle 时, 观察Eclipse控制台视图中的输出内容。

(2)将窗口最小化, 然后还原, 观察Eclipse控制台视图中的输出内容。

分析为什么不同动作会有不同语句输出。

答:因为Applet对象创建后调用的init()方法(Applet的初始化方法),只在Applet首次加载入浏览器时被调用。

Applet被初始化后,当浏览器在页面上显示Applet时调用start()方法,同时调用paint()方法。

浏览器被最小化时会调用stop()方法,当浏览器在被最小化后又恢复时,又会调用start()方法。

用户最小化界面,然后又恢复界面,此时AWT线程会自动调用组件的paint()方法,重新显示组件的外观。

(3) 请单击图12-1 中的Stop 按钮, 观察Eclipse控制台视图中的输出内容。

Now stop()is working.再单击Start按钮, 观察Eclipse控制台视图中的输出内容。

Now init()is working.Now start()is working.The applet runs paint().最后单击Exit 按钮, 观察Eclipse控制台视图中的输出内容。

Now stop()is working.Now destroy()is working.分析为什么单击相应按钮会有不同语句在控制台中输出。

JAVA —APPLET实验内容实验指导

JAVA —APPLET实验内容实验指导

实验六 Applet应用程序一、实验目的1.理解Applet 程序的工作原理和使用方法;2.熟练掌握Applet程序开发;3.掌握多媒体的实现手段和使用方法;4.掌握Applet传递参数的方法。

二、实验要求1.掌握在 Applet 容器中添加组件的方法;2.熟练使用图形类 Graphics。

3.掌握插入图像与播放音乐的方法。

4.了解 Applet 的生命周期。

5.掌握向applet中传递参数。

三、实验内容(一)创建图形用户界面1.在Applet 中添加标签、按钮并使用网格布局程序功能:在Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。

编写SY6_1.java 程序文件,源代码如下:import java.awt.*;import java.applet.Applet;public class SY6_1 extends Applet {Label l1;Button b1, b2, b3, b4, b5, b6;public void init() {setLayout(new GridLayout(3,3));l1=new Label("标签1");b1 = new Button("按钮1");b2 = new Button("按钮2");b3 = new Button("按钮3");b4 = new Button("按钮4");add(l1);add(b1);add(b2);add(b3);add(new Label());add(b4);add(new Button("按钮5"));add( new Button("按钮6"));add(new Label("标签2"));}}编译程序SY6_1.java。

Java Applet

Java Applet

实验报告课程名称Java程序设计实验项目实验四Java Applet系别电子信息工程专业/班级姓名实验日期_______________________ 成绩_______________________指导教师一、实验题目:实验四Java Applet二、实验内容:编写Applet程序,在界面上打印出自己的学号、姓名、班级以及由字符“*”组成的实心菱形三、程序清单及结果:(需要标明实现程序对应的实验内容,并给出合理的程序注释及运行结果)1)程序清单及注释//package appletdemo;import java.applet.Applet;import java.awt.Color;import java.awt.Graphics;public class MyApplet extends Applet {private static final long serialVersionUID = 1L;public void init(){}public void start()}public void stop(){}public void destroy(){}public void paint(Graphics g){for(int i=0; i < 7; i++){for(int j=0; j < 7; j++){g.setColor(Color.blue);if(i <= 3) //左上角{if(j <= 3){if(i + j >= 3)g.drawString("*", i*20+50, j*20+50);}}//g.setColor(Color.red);if(i > 3) //左下角{if(j <= 3){int tmp = i - 3;if(tmp <= j)g.drawString("*", i*20+50, j*20+50);}}//g.setColor(Color.yellow); //右上角if(i <= 3){if(j > 3){int tmp = j - 3;if(i >= tmp)g.drawString("*", i*20+50, j*20+50);}}//g.setColor(Color.green); //右下角if(i > 3){if(j > 3){if((i + j - 4) < 6)g.drawString("*", i*20+50, j*20+50);}}}//内层for}//外层forg.drawString("学号:xxxx",8*20,8*20);g.drawString("姓名:某某",8*20,9*20);g.drawString("班级:yyyy",8*20,10*20);}}下面是html文件:<HTML><HEAD><TITLE>第四次试验</TITLE></HEAD><BODY> <APPLET CODE=MyApplet.class WIDTH=300 HEIGHT=300 ></APPLET></BODY></HTML>2)程序运行结果浏览器打开如下:Appletviewer.exe运行如下:四、程序调试报告及总结这次实验,我学会了编写applet小应用程序,applet小应用程序与application应用程序不一样,applet程序必须有 init()、start()、stop()、destroy()方法,构成一个生命周期,而且不需要main方法,applet程序不能独立运行,只能用浏览器或者虚拟机运行。

java编写的简单的计算器程序

java编写的简单的计算器程序

j a v a编写的简单的计算器程序-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN计算器项目内容:编写一个Applet,模仿windows附件所带计算器的功能,可以帮助用户完成计算功能,具体如下图所示。

项目要求:使用图形的方式借助窗口、菜单、按钮等标准界面元素和鼠标操作,来帮助用户方便地向计算机系统发出命令,启动操作,并将系统运行的结果同样以图形的方式显示给用户,这样更加直观和生动;1.Applet容器中组件的添加与设置,包括面板以及菜单的使用;2.容器中组件的布局管理;3.Java核心包中数组、数学计算类的使用;4.异常的处理;5.事件处理模型中的三类对象的使用:1.Event-事件,用户对界面操作在java语言上的描述,以类的形式出现,例如键盘操作对应的事件类是KeyEvent。

2.Event Source-事件源,事件发生的场所,通常就是各个组件,例如按钮Button。

3.Event handler-事件处理者,接收事件对象并对其进行处理的对象。

6.程序中事件处理的流程:1.计算流程的细化参考代码:import .*;import .*;import .*;importimportimportpublic class Calculatorimplements ActionListener { #############"); dd(panel);panel1 = new JPanel();panel2 = new JPanel();(new BorderLayout());键入计算的第一个数字。

\n");("2. 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。

\n"); ("3. 键入计算的下一个数字。

\n");("4. 输入所有剩余的运算符和数字。

\n");("5. 单击“=”。

JAVA课程设计----计算器小程序报告共13页文档

JAVA课程设计----计算器小程序报告共13页文档

#####学院JA V A语言课程设计报告小程序计算器系统管理班级:#######姓名:###指导老师:###时间:2012年6月25日至6月29日目录1、课程设计概述--------------------------------------------------31.1利用java编写计算器,使之具备一定的功能:-----------------31.2 课程设计的主要思想--------------------------------------------------31.3 该项目设计的目的-----------------------------------------------------32、需求分析方案--------------------------------------------------42.1功能需求分析-----------------------------------------------42.2 性能需求分析-----------------------------------------------43、总体设计方案--------------------------------------------------53.1界面设计----------------------------------------------------------------------53.2功能介绍-----------------------------------------------------------------------54、详细说明、调试---------------------------------------------64.1程序流程图-------------------------------------------------------64.2部分代码说明-----------------------------------------------------64.3程序调试与结果示例-------------------------------------------85、个人总结-----------------------------------------------------106、附录(代码)-----------------------------------------------116.1登陆界面代码--------------------------------------------116.2计算器主界面--------------------------------------------126.3 退出界面代码-------------------------------------------151.课程设计概述1.1利用java编写计算器,使之具备一定的功能:(1)使用图形用户界面:一个文本框;0-9数字按钮;加、减、乘、除运算符;“等于”符号;复位按钮;(2)完成整数、实数的四则运算(加、减、乘、除);(3)通过按钮点击实现数据的复位(清零);(4)实数运算中小数位的精度一致。

实验八 Applet应用程序设计

实验八  Applet应用程序设计

《Java语言程序设计》实验报告this.setBounds(dim.width/4,dim.height/4,dim.width/2,dim.height/2); //窗口居中this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.addComponentListener(this); //注册组件事件监听器JPanel jpanel = new JPanel();this.getContentPane().add(jpanel,"North");button_t = new JButton("椭圆");jpanel.add(button_t);button_t.addActionListener(this);button_j = new JButton("矩形");jpanel.add(button_j);button_j.addActionListener(this);canvas = new RoseCanvas(Color.red); //创建自定义画布组件this.getContentPane().add(canvas,"Center");this.setVisible(true);}public void actionPerformed(ActionEvent e) //按钮单击事件处理方法{if(e.getSource()==button_t){i=1;canvas.seti(i);}if(e.getSource()==button_j){i=2;canvas.seti(i);}canvas.repaint(); //重画}public void componentResized(ComponentEvent e) //改变组件大小时{this.repaint(); //重画}public void componentMoved(ComponentEvent e) {}public void componentHidden(ComponentEvent e) {}public void componentShown(ComponentEvent e) {}public static void main(String arg[]){new RoseJFrame();}}class RoseCanvas extends Canvas //画布组件{private Color color; //颜色private static int i;public RoseCanvas(Color color){this.setColor(color);}public void seti(int i){this.i = i;;}public void setColor(Color color){this.color = color;}public void paint(Graphics g) //在Canvas上作图{int x0 = 50;//this.getWidth()/2; //(x0,y0)是组件正中点坐标int y0 = 50;//this.getHeight()/2;// g.setColor(color); //设置画线颜色// g.drawLine(x0,0,x0,y0*2); //画X轴// g.drawLine(0,y0,x0*2,y0); //画Y轴/* for (int j=40; j<200; j+=20) //画若干圈四叶玫瑰线for (int i=0; i<1023; i++) //画一圈四叶玫瑰线的若干点{double angle = i*Math.PI/512;double radius = j*Math.sin(2*angle);int x =(int) Math.round(radius * Math.cos(angle) * 2);int y =(int) Math.round(radius * Math.sin(angle));g.fillOval(x0+x,y0+y,1,1); //画直径为1的圆就是一个点}*/if(i==1){实验内容g.setColor(Color.red);//g.drawLine( x0, y0, x0, y0*2);g.drawOval(x0, y0, 100, 60);}if(i==2){g.setColor(Color.blue);g.drawRect(x0, y0, 100, 60);}}}运行结果:实验分析本次试验我建立在课本例题的基础上,略加修改而成。

Applet实验报告3

Applet实验报告3
题目:
编写Applet程序在画出一条两个周期的正弦曲线,要求:
1)画出坐标系,坐标系在applet窗口的中央,作图区域的大小通过html文件传递
2)曲线的颜色为红色,坐标系为绿色,有刻度
过程与
结果
1、编写DisplaySinFunction.java
(1)编写JPanel的继承类DrawSinFunction,在其中利用setColor设置颜色,polygon画出正弦曲线,drawLine画出坐标轴
×××学院实验报告
2012年11月1日
课程名称
面向对象程序设计
项目名称
常用基础类库与工具类库
实验者
×××
专业年级
信息10
学号
×××
内容与
要求
实验要求:
了解语言基础类库使用方法;
掌握Applet类与Applet小程序的基本结构,能够编写Applet小程序;
实现Applet程序和HTML文件的参数传递。
(2)将DrawSinFunction添加到DisplaySinFunction,即JApplet的继承类中
2、编写DisplaySinFunction.html
设置code、width和height值。ቤተ መጻሕፍቲ ባይዱ
3、在浏览器中打开DisplaySinFunction.html,运行结果见图1.
评分

评语
图1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

小应用程序Applet设计一、课题内容和要求内容:设计和编写一个可以用鼠标操作的Applet小应用程序和相应的HTML 页面,观察Applet的执行过程,测试程序鼠标用户交互操作的效果。

要求:要求学生能在学习和理解课堂学习内容中JAVA小应用程序的基础上,通过实验,培养学生将JAVA小应用程序相关知识点(包括JAVA Applet和低级事件处理模型)有机结合,设计基于WEB浏览器的小应用程序的能力。

二、设计思路分析class App:一个Java Applet计算器的主类public void init():完成初始化appletpublic boolean action():实现事件处理的方法public void doOperator():运算及运算结果输出操作public void doForeScreen():数字和小数点输出到文本框操作public void doClear():清空操作三、概要设计public class App extends Applet {TextField tfAnswer;Button b0, b1, b2, b3, b4, b5, b6, b7, b8, b9;Button bPoint, bEqual, bPlus, bMinus, bClear, bMulti, bDivision;String OperatorCurrent, OperatorPre;String ForeScreen, BackScreen;boolean isFloat = false;public void init();public boolean action(Event e, Object o);public void doOperator()public void doForeScreen(String s);public void doClear();}事件处理:运算及运算结果输出:四、详细设计Java代码:import java.awt.*;import java.applet.*;public class App extends Applet {TextField tfAnswer;// 定义变量Button b0, b1, b2, b3, b4, b5, b6, b7, b8, b9;Button bPoint, bEqual, bPlus, bMinus, bClear, bMulti, bDivision;String OperatorCurrent, OperatorPre;String ForeScreen, BackScreen;boolean isFloat = false;public void init() {// 初始化OperatorCurrent = new String("");OperatorPre = new String("");ForeScreen = new String("0");// 保证输入字符串不为空防止计算错误BackScreen = new String("");setBackground(Color.gray);setLayout(null);// 设为空布局便于自定义组件位置tfAnswer = new TextField();// 设置文本框样式tfAnswer.setBounds(20, 20, 175, 40);tfAnswer.setFont(new Font(BackScreen, Font.BOLD, 28));add(tfAnswer);tfAnswer.setText(ForeScreen);bClear = new Button("C");// 设置按钮样式bClear.setBounds(20, 70, 40, 40);add(bClear);bDivision = new Button("/");bDivision.setBackground(Color.green);bDivision.setBounds(65, 70, 40, 40);add(bDivision);bMulti = new Button("*");bMulti.setBackground(Color.green);bMulti.setBounds(110, 70, 40, 40);add(bMulti);bMinus = new Button("-");bMinus.setBackground(Color.green);bMinus.setBounds(155, 70, 40, 40);add(bMinus);b7 = new Button("7");b7.setBounds(20, 115, 40, 40);b7.setBackground(Color.orange);add(b7);b8 = new Button("8");b8.setBackground(Color.orange);b8.setBounds(65, 115, 40, 40);add(b8);b9 = new Button("9");b9.setBackground(Color.orange);b9.setBounds(110, 115, 40, 40);add(b9);bPlus = new Button("+");bPlus.setBackground(Color.green);bPlus.setBounds(155, 115, 40, 85);add(bPlus);b4 = new Button("4");b4.setBackground(Color.orange);b4.setBounds(20, 160, 40, 40);add(b4);b5 = new Button("5");b5.setBackground(Color.orange);b5.setBounds(65, 160, 40, 40);add(b5);b6 = new Button("6");b6.setBackground(Color.orange);b6.setBounds(110, 160, 40, 40);add(b6);b1 = new Button("1");b1.setBackground(Color.orange);b1.setBounds(20, 205, 40, 40);add(b1);b2 = new Button("2");b2.setBackground(Color.orange);b2.setBounds(65, 205, 40, 40);add(b2);b3 = new Button("3");b3.setBackground(Color.orange);b3.setBounds(110, 205, 40, 40);add(b3);bEqual = new Button("=");bEqual.setBackground(Color.green);bEqual.setBounds(155, 205, 40, 85);add(bEqual);b0 = new Button("0");b0.setBackground(Color.orange);b0.setBounds(20, 250, 85, 40);add(b0);bPoint = new Button(".");bPoint.setBackground(Color.orange);bPoint.setBounds(110, 250, 40, 40);add(bPoint);}public boolean action(Event e, Object o) {// 实现事件处理的方法String s = new String("");if ((e.target == b0) || (e.target == b1) || (e.target == b2)|| (e.target == b3) || (e.target == b4) || (e.target == b5)|| (e.target == b6) || (e.target == b7) || (e.target == b8)|| (e.target == b9)) {// 获取数字按钮数据并在控制台和文本框输出if (e.target != bPoint) {// 获取数字s = (String) o;doForeScreen(s);}}if ((e.target == bPoint) && !ForeScreen.contains(".")) {// 保证原数不含小数点的情况下获取小数点并在控制台和文本框输出s = (String) o;if (ForeScreen.equals(""))// 原来没有输入数据则用0.{doForeScreen("0.");} else// 原来有输入数据则用.{doForeScreen(s);}}if (e.target == bClear) {// 清除按钮进行清除操作doClear();}if ((e.target == bMulti) || (e.target == bDivision)|| (e.target == bPlus) || (e.target == bMinus)|| (e.target == bEqual)) {// 加减乘除等于按钮获取运算操作符并进行运算操作if (ForeScreen != "") {// 重新输入数字进行运算操作OperatorCurrent = ((String) o);doOperator();} else {// 没有重新输入数字则作为上一运算符--->保证不输入连续的同一运算符OperatorPre = ((String) o);}}return true;}public void doOperator() {// 运算及运算结果输出操作double dFore, dBack;Double d;if (OperatorPre.equals("")) {// 上一运算符没有则直接输出BackScreen = ForeScreen;// 输入的数据转入后台并清空,用后台输出它ForeScreen = "";tfAnswer.setText(BackScreen);repaint();} else {// 上一运算符存在则运算后输出dFore = (new Double(ForeScreen)).doubleValue();dBack = (new Double(BackScreen)).doubleValue();ForeScreen = "";// 运算结果转入后台并清空,用后台输出它BackScreen = tfAnswer.getText();if (OperatorPre.equals("+")) {d = new Double((dBack + dFore));BackScreen = d.toString();}if (OperatorPre.equals("-")) {d = new Double((dBack - dFore));BackScreen = d.toString();}if (OperatorPre.equals("*")) {d = new Double((dBack * dFore));BackScreen = d.toString();}if (OperatorPre.equals("/")) {d = new Double((dBack / dFore));BackScreen = d.toString();}tfAnswer.setText(BackScreen);repaint();}OperatorPre = OperatorCurrent;// 现运算符变上一运算符repaint();}public void doForeScreen(String s) {// 数字和小数点输出到文本框操作ForeScreen += s;if (ForeScreen.length() > 1 && ForeScreen.startsWith("0")&& !ForeScreen.contains("."))// 以0开头的长度大于一的非小数去掉开头的0ForeScreen = ForeScreen.substring(1);tfAnswer.setText(ForeScreen);repaint();}public void doClear() {// 清空操作OperatorCurrent = "";OperatorPre = "";ForeScreen = "0";BackScreen = "";isFloat = false;tfAnswer.setText(ForeScreen);repaint();}}Html代码:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>"JavaApplet计算器"</title></head><body><div><applet code="App.class" width="215" height="310"></applet></div></body></html>五、测试数据及其结果分析1正常输入:1.88+99=C .666/33=C 7.33*26=0.5-1-3=2结果:输出正常。

相关文档
最新文档