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

📄 javaclock.java

📁 an analog clock icon with java
💻 JAVA
字号:
/** Copyright (c) 1994-1998 Sun Microsystems, Inc. All Rights Reserved.** Permission to use, copy, modify, and distribute this software and its* documentation for NON-COMMERCIAL or COMMERCIAL purposes and without fee is* hereby granted. Please refer to the file* http://java.sun.com/nav/business/trademark_guidelines.html for further* important copyright and trademark information and to* http://java.sun.com/nav/business/index.html for further important licensing* information for the Java (tm) Technology.* * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE* SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE* IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR* NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY* LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR* ITS DERIVATIVES.* * THIS SOFTWARE IS NOT DESIGNED OR INTENDED FOR USE OR RESALE AS ON-LINE* CONTROL EQUIPMENT IN HAZARDOUS ENVIRONMENTS REQUIRING FAIL-SAFE PERFORMANCE,* SUCH AS IN THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT NAVIGATION OR* COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL, DIRECT LIFE SUPPORT MACHINES, OR* WEAPONS SYSTEMS, IN WHICH THE FAILURE OF THE SOFTWARE COULD LEAD DIRECTLY TO* DEATH, PERSONAL INJURY, OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE ("HIGH* RISK ACTIVITIES"). SUN SPECIFICALLY DISCLAIMS ANY EXPRESS OR IMPLIED* WARRANTY OF FITNESS FOR HIGH RISK ACTIVITIES.*/import java.applet.*;import java.awt.*;import java.net.*;import java.util.*;public class JavaClock extends Applet implements Runnable{   private ParamParser param;   private Dimension size;   private Image offImage;   private Graphics offG;   private Thread animate;   private String link;   private String target;   private long delay;   private Color bgcolor;   private Font cfont;   private FontMetrics cfm;   private Rectangle arect;   private int border;   private AnalogClock aclock;   public void init()   {      size = size();      param = new ParamParser(this);      bgcolor = param.parseColor("bgcolor", Color.white);      setBackground(bgcolor);      delay = param.parseInt("delay", 100);      link = param.parseString("link", null);      target = param.parseString("target", "_self");      // Create the offImage for double-buffering.      offImage = createImage(size.width, size.height);      offG = offImage.getGraphics();      offG.setColor(bgcolor);      offG.fillRect(0, 0, size.width, size.height);      border = param.parseInt("border", 10);      arect = new Rectangle(border, border, size.width - (2 * border),                            size.height - (2 * border));      cfont = param.parseFont("cfont", "TimesRoman", Font.PLAIN, 10);      offG.setFont(cfont);      cfm = offG.getFontMetrics();      aclock = new AnalogClock(arect, param, cfm);   }   public void start()   {      if ((animate == null) || (!animate.isAlive()))      {         animate = new Thread(this);      }      animate.start();   }   public void run()   {      while (Thread.currentThread() == animate)      {         try         {            repaint();            Thread.sleep(delay);         }         catch (InterruptedException e)         {            e.printStackTrace();         }      }   }   public void stop()   {      if ((animate != null) && (animate.isAlive()))      {         animate.stop();      }   }   public void destroy()   {      animate = null;   }   public void update(Graphics g)   {      aclock.draw(offG);      paint(g);   }   public void paint(Graphics g)   {      g.drawImage(offImage, 0, 0, this);   }   public boolean mouseDown(Event evt, int x, int y)   {      if (link != null)      {         try         {            URL url = new URL(getDocumentBase(), link);            getAppletContext().showDocument(url, target);            if (target.equals("_self"))            {               stop();            }         }         catch(MalformedURLException e)         {            e.printStackTrace();         }      }      return(true);   }   public boolean mouseEnter(Event evt, int x, int y)   {      if (link != null)      {         showStatus(link);      }      return(true);   }   public boolean mouseExit(Event evt, int x, int y)   {      if (link != null)      {         showStatus("");      }      return(true);   }}

⌨️ 快捷键说明

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