?? clock.java
字號:
import java.applet.Applet;
import java.awt.*;
import java.util.*;
public class Clock extends Applet implements Runnable
{
Thread thisThread;
Color faceColor,borderColor,minuteColor,hourColor,secondColor;
public void init()
{
faceColor = readColor (getParameter("faceCol"));
borderColor = readColor (getParameter("borderCol"));
minuteColor = readColor (getParameter("minuteCol"));
hourColor = readColor (getParameter("hourCol"));
secondColor = readColor (getParameter("secondCol"));
}
public Color readColor(String aColor)
{
if(aColor==null)
return Color.black;
int r,g,b;
StringTokenizer st = new StringTokenizer(aColor,",");
try
{
r = Integer.valueOf(st.nextToken()).intValue();
g = Integer.valueOf(st.nextToken()).intValue();
b = Integer.valueOf(st.nextToken()).intValue();
return new Color(r,g,b);
}
catch (Exception e)
{
System.out.println("Error: "+e);
return Color.black;
}
}
public void start()
{
thisThread = new Thread(this);
thisThread.start();
}
public void run()
{
while(true)
{
repaint();
try
{
thisThread.sleep(1000);
}
catch (Exception e){}
}
}
public void update(Graphics g)
{
paint(g);
}
public void paint(Graphics g)
{
g.setColor(faceColor);
g.fillOval(0,0,100,100);
g.setColor(borderColor);
g.drawOval(0,0,100,100);
Calendar d = Calendar.getInstance();
g.setColor(minuteColor);
double angle = (((double)(90-d.get(Calendar.MINUTE)))/60)*2*Math.PI;
g.drawLine(50,50,50+(int)(Math.sin(angle)*50),50+(int)(Math.cos(angle)*50));
g.setColor(hourColor);
angle = (((double)(18-d.get(Calendar.HOUR_OF_DAY)+(double)(Calendar.MINUTE)/60))/12)*2*Math.PI;
g.drawLine(50,50,50+(int)(Math.sin(angle)*40),50+(int)(Math.cos(angle)*40));
g.setColor(secondColor);
angle = (((double)(90-d.get(Calendar.SECOND)))/60)*2*Math.PI;
g.drawLine(50,50,50+(int)(Math.sin(angle)*50),50+(int)(Math.cos(angle)*50));
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -