⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ruler.java

📁 一个java applet实例教程,控件的特效,实现动态分割线效果.
💻 JAVA
字号:
import java.applet.*;
import java.awt.*;

public class Ruler extends Applet implements Runnable
{
  private Image ILeft1,IRight1,ILeft2,IRight2,temp;
  private Image offI;
  private Graphics offG;
  private Thread thread = null;
  private MediaTracker imageTracker;
  
  private int height,width;
  
  public void init()
  {
    IRight1 = getImage(getDocumentBase(),"cat1.gif");
    IRight2 = getImage(getDocumentBase(),"cat2.gif");
    ILeft1 = getImage(getDocumentBase(),"cat3.gif");
    ILeft2 = getImage(getDocumentBase(),"cat4.gif");
    imageTracker = new MediaTracker(this);
    imageTracker.addImage(IRight1,0);
    imageTracker.addImage(ILeft1,0);
    imageTracker.addImage(IRight2,0);
    imageTracker.addImage(ILeft2,0);
    width = this.size().width;
    height = this.size().height;
    
    try
    {
      imageTracker.waitForID(0);
    }
    catch(InterruptedException e){}
    
    offI = createImage(width,height);
    offG = offI.getGraphics();
    
  }
  
  public void start()
  {
    if(thread == null)
    {
      thread = new Thread(this);
      thread.start();
    }
  }
  
  public void run()
  {
    Color fg  = this.getForeground();
    int ImageW,ImageH,x=0,y=0;
    boolean forward = true;
    ImageW = IRight1.getWidth(this);
    //System.out.println(ImageW);
    ImageH = IRight1.getHeight(this);
    //System.out.println(ImageH);
    y= (height-ImageH)/2;
    //System.out.println(y);
    fg = Color.green;
    
    try
    {
      while(thread != null)
      {
        
        thread.sleep(200);
        
        if(forward)
        {
          x+=19;
          
          if((x%2)==1)
          {
            temp = IRight1;
          }
          else
          {
            temp = IRight2;
          }
          if(x>=(width-ImageW))
          {
            forward = false;
          }
          //System.out.println(x);
        }
        else
        {
          x-=19;
          if((x%2)==1)
          {
            temp = ILeft1;
          }
          else
          {
            temp = ILeft2;
          }
          if(x == 0)
          {
            forward = true;
          }
          //System.out.println(x);
        }

        
        offG.setColor(Color.white);
        offG.fillRect(0,0,width,height);
        
        offG.setColor(fg.brighter().brighter());
        offG.drawLine(0,(height-ImageH)/2+ImageH,width,(height-ImageH)/2+ImageH);
        offG.setColor(fg.darker().darker());
        offG.drawLine(0,(height-ImageH)/2+ImageH+1,width,(height-ImageH)/2+ImageH+1);
        
        offG.drawImage(temp,x,y,this);
        //System.out.println(i);
        repaint();
      }
    }
    catch(InterruptedException e){}
  }
  
  public void update(Graphics g)
  {
    paint(g);
  }
  
  public void paint(Graphics g)
  {
    g.drawImage(offI,0,0,this);
  }
  

}
  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -