Java代码示例:聚光灯

原创|其它|编辑:郝浩|2009-08-17 14:18:16.000|阅读 674 次

概述:本介绍javaApplet聚光灯的编程方法。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

  代码如下:
 
   import java.applet.*;
  import java.awt.*;
  import java.awt.event.*;
  import java.awt.font.*;
  import java.awt.image.*;
  public class SpotLight extends Applet implements Runnable{
  private String myText;
  boolean stop=false;
  private Font font;
  private int fontSize;
  private Thread mythread;
  private int spotPosition=50;
  private int myTextSize=20;
  private int myTextWidth=0;
  private int fontHeight,baseLine,w;
  public void init(){
  String fonts,temp;
  myText=this.getParameter("text");
  if(myText==null)
  myText="你好!";
  fonts=this.getParameter("fontSize");
  if(fonts==null)
  fontSize=20;
  else
  fontSize=Integer.parseInt(fonts);
  font=new Font("TimesRoman",Font.BOLD,fontSize);
  FontMetrics fm=getFontMetrics(font);
  fontHeight=fm.getHeight();
  baseLine=this.getSize().height/2+fontHeight/3;
  myTextWidth=fm.stringWidth(myText);
  w=fm.stringWidth(myText);
  w=(getSize().width-w)/2;
  spotPosition=w;
  this.setBackground(Color.black);
  }
  public void start(){
  if(stop) stop=false;
  if(mythread==null)
  {
  mythread=new Thread(this);
  mythread.start();
  }
  }
  public void stop(){
  stop=true;
  mythread=null;
  }
  public void update(Graphics g){
  paint(g);
  }
  public void paint(Graphics g){
  g.setFont(font);
  g.setColor(Color.blue);
  g.drawString(myText,w,baseLine);
  g.clipRect(spotPosition,0,myTextSize,getSize().height);
  g.setColor(Color.white);
  g.drawString(myText,w,baseLine);
  spotPosition=(spotPosition+1)%(myTextWidth+100);
  }
  public void run(){
  while(!stop)
  {
  repaint();
  try
  {
  mythread.sleep(50);
  }
  catch(Exception e)
  {
  e.printStackTrace();
  }
  }
  }
  }


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP