利用MyEclipse创建一个applet小应用程序

来源:互联网 发布:sql%20server 编辑:程序博客网 时间:2024/06/05 21:57

1.打开MyEclipse创建一个web项目 

2.项目名上右键点击创建一个applet

3.编写applet程序内容

4.运行

a.可以直接在点击窗体上的运行按钮

b.也可以到文件目录创建一个html文件嵌入编译后的.class文件,在cmd中用appletviewer  *.html运行(class文件路径要整对,最好使用缺省包)


例子

applet文件  实现余弦函数曲线图


import java.applet.Applet;import java.awt.Graphics;public class First extends Applet {int x,y;public void paint(Graphics g) {         //画x轴、y轴for(x=0;x<=750;x+=1){g.drawString("·",x,200);if(x<=385) g.drawString("·",360,x);}g.drawString("Y",330,20);         //画y轴箭头for(x=360;x<=370;x+=1){g.drawString("·",x-10,375-x);g.drawString("·",x,x-355);}         //画x轴箭头g.drawString("X",735,230);for(x=740;x<=750;x+=1){g.drawString("·",x,x-550);g.drawString("·",x,950-x);}         //画cox()曲线for(x=0;x<=720;x+=1){double a=Math.cos(x*Math. PI/180+Math.PI);y=(int)(200+80*a);//放大80倍并向下平移200个像素g.drawString("·",x,y);}}}

html文件 (文件名任意,使用appletviewer  *.html运行)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head><title>余弦曲线测试</title></head><body> <p><!--调用First字节码文件 --><applet code="First.class" width="900" height="600"></applet></body></html>  


前面介绍的余弦曲线的绘制,我们看到的是一个完整的静态图形,能否动态地展现绘制的过程?答案是肯定的,我们可以采用线程的方式来实现,参考代码如下:

import java.applet.Applet;import java.awt.Graphics;public class First extends Applet implements Runnable{//通过实现Runnable接口实现线程操作int x,y;double a;int xpos=0;Thread runner;boolean painted=false;public void init() //Applet创建即启动执行,坐标初始化{Graphics g=getGraphics();//画画之前,必须先取得画笔for(x=0;x<=750;x+=1)//画x轴{  g.drawString("·",x,200);  if(x<=385) g.drawString("·",360,x);  }g.drawString("Y",330,20);//画y轴for(x=360;x<=370;x+=1)//画y轴箭头{  g.drawString("·",x-10,375-x);  g.drawString("·",x,x-355);}g.drawString("X",735,230);for(x=740;x<=750;x+=1)//画x轴箭头{  g.drawString("·",x,x-550);  g.drawString("·",x,950-x);}}public void start() //Applet创建后自启动方法{if(runner==null){runner=new Thread(this);//通过Thread类来启动Runnablerunner.start();//线程启动}}public void stop() //Applet生命周期结束后自启动方法{if(runner!=null){runner=null;//结束线程}}public void run() //线程运行方法{while(true){for(xpos=0;xpos<900-90;xpos+=3)//循环设置曲线x轴坐标边界{repaint();//调用paint()方法try{Thread.sleep(200);//线程休息100毫秒}catch(InterruptedException e){}if(painted){painted=false;}}}}public void paint(Graphics g)//画图方法{for(x=0;x<=xpos;x+=1)//循环画曲线{  a=Math.cos(x*Math. PI/180+Math.PI);  y=(int)(200+80*a);//放大80倍并向下平移200个像素  g.drawString("·",x,y);}painted=true;}}

在屏幕上画出奥运五环旗。


观察奥运五环旗的图案,直观的感觉,由五个圆组成,每个圆的颜色不一样,大小一样,按照一定的位置摆放,找到圆心坐标的规律,就可以通过Graphics类提供的绘制椭圆的方法drawOval()来实现画圆操作。

奥运五环旗由五个不同颜色的圆组成,我们可以通过循环依次输出五个圆环。

分析圆的位置规律。分析出圆的圆心坐标是画图的关键。


上面三个圆的圆心abcy坐标相同,下面两个圆的圆心dey坐标相同,ab=bc=ad=de,为保证两个圆相交,两个圆的圆心距离必须小于2rr代表圆的半径)。fab的中点,adf组成直角三角形,af=ad/2,只要给定五个圆的任何一个圆心坐标,就可以推倒出其他几个圆的圆心坐标。我们这里使用数组来存放每个圆环的颜色、坐标。代码如下:


import java.awt.*;import java.awt.event.*;import java.applet.Applet;import java.awt.Color;import java.awt.Font;public class Ch1_4 extends Applet {private Color clr[]={Color.blue,Color.black,Color.red,Color.yellow,Color.green};//clr[]存储颜色private int[] x={100,136,172,118,154}; //x[]存储圆心的x坐标private int[] y={60,60,60,91,91};//y[]存储圆心的y坐标private int[][] xy={{100,60},{136,60},{172,60},{118,91},{154,91}};//存储圆心的坐标private int r=20,d=40;public void paint(Graphics g)//画图方法{ Font font = new Font("楷体",Font.PLAIN,20);//文字字体、大小g.setFont(font);for(int i=0;i<5;i++)//循环5次,画5个圆环{g.setColor(clr[i]);g.drawOval(x[i], y[i], d, d);//d代表椭圆外切矩形的长宽,相等代表圆}g.setColor(Color.blue);//设置颜色g.setFont(font);g.drawString("奥运五环旗",120,169);}//END PAINT}//END CLASS






原创粉丝点击