国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

一個經(jīng)典的JAVA APPLET時鐘程序(一)

2019-11-18 13:40:19
字體:
供稿:網(wǎng)友

  轉(zhuǎn)眼間一年又要過了,自己又老了一歲,郁悶啊。趁著還有幾分鐘才新年,趕緊再發(fā)幾篇文章,給過去的一年添點東西。


該程序是從網(wǎng)上發(fā)現(xiàn)的,是一個簡單的時鐘顯示程序。

代碼特色:
時鐘代碼提供了各種接口,可以在Html文件中設(shè)置,變化出多姿多彩的時鐘模型,
參數(shù)說明見代碼內(nèi)info數(shù)組

時鐘的繪制采用雙緩沖圖形處理機制,即先在緩沖區(qū)內(nèi)繪制圖形,再把圖形顯示到網(wǎng)頁上可以有效的防止閃爍。

另外時鐘的不斷繪制是通過一個線程不斷讀取系統(tǒng)時間,假如時間有變化即繪制。采用一個線程繪制,一個線程處理網(wǎng)頁比較符合APPLET設(shè)置規(guī)范。


代碼部分:

import java.awt.*;
import java.applet.*;
import java.util.*;
import java.net.*;

class Hms extends Date
{
public Hms(double localOffset){ //假如HTML文件中設(shè)置了時區(qū),則把時間設(shè)為當(dāng)?shù)貢r區(qū)時間
super();
long tzOffset=getTimezoneOffset()*60L*1000L;
localOffset *= 3600000.0;
setTime(getTime() + tzOffset + (long)localOffset);
}

public Hms(){ //假如沒有設(shè)置時區(qū),則就使用當(dāng)?shù)氐臅r間
super();
}

public double get_hours() //時間換算,把如5:30這樣的時間換算成5.5
{
return (double)super.getHours()+(double)getMinutes()/60.0;
}
}

abstract class ClockHand //抽象類,提供時針、分針、秒針類使用
{
PRotected int baseX[], baseY[];
protected int transX[],transY[];
protected int numberOfPoints;

public ClockHand(int originX, int originY, int length,int thickness,int points){
baseX= new int[points]; baseY=new int[points];
transX= new int[points]; transY=new int[points];
initiallizePoints(originX,originY,length,thickness);
numberOfPoints=points;
}

abstract protected void initiallizePoints( int originX,
int originY,
int length,
int thickness);

abstract public void draw(Color color, double angle, Graphics g);

protected void transform(double angle) //通過角度計算出時針、分針、秒針的繪制位置
{
for(int i=0;i<numberOfPoints;i++){
transX[i]=(int)( (baseX[0]-baseX[i]) * Math.cos(angle) -
(baseY[0]-baseY[i]) * Math.sin(angle) +
baseX[0]);

transY[i]=(int)( (baseX[0]-baseX[i]) * Math.sin(angle) +
(baseY[0]-baseY[i]) * Math.cos(angle) +
baseY[0]);
}
}
}

//秒針使用的類
class SweepHand extends ClockHand
{
public SweepHand(int originX,int originY, int length, int points)
{
super(originX,originY,length,0,points);

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 镇远县| 长乐市| 泰兴市| 长阳| 贵溪市| 汶上县| 磐安县| 同德县| 永康市| 绥滨县| 阿拉尔市| 哈尔滨市| 安远县| 靖宇县| 金湖县| 抚远县| 湖州市| 兴隆县| 荃湾区| 蓬安县| 息烽县| 珠海市| 松原市| 南川市| 高碑店市| 连山| 岢岚县| 邵阳县| 商水县| 城步| 顺义区| 增城市| 江陵县| 清远市| 安陆市| 铁岭县| 连山| 淮南市| 博客| 东安县| 辽宁省|