利用線程實(shí)現(xiàn)動(dòng)態(tài)顯示系統(tǒng)時(shí)間
編寫(xiě)Applet小程序,通過(guò)在HTML文檔中接收參數(shù), 用不同顏色、字體顯示當(dāng)前的系統(tǒng)時(shí)間。
import java.awt.*;
import java.applet.Applet;
import java.util.*;
import java.awt.Graphics;
public class clock extends Applet implements Runnable //繼承Applet類(lèi)并實(shí)現(xiàn)Runnable接口
{
Thread clockThread=null; //創(chuàng)建一個(gè)空線程
Calendar now;
private String s1;
private int size;
int r1,g1,b1;
public void init() //初始化方法
{
size=Integer.parseInt(getParameter("size"));//獲得字體大小
}
public void start()
{
if(clockThread==null)
{
clockThread=new Thread(this,"Clock2"); //創(chuàng)建線程對(duì)象clockThread
clockThread.start(); //開(kāi)始執(zhí)行線程
}
}
public void run() //實(shí)現(xiàn)Runnable接口的run()方法
{
Thread myThread=Thread.currentThread();//創(chuàng)建線程對(duì)象myThread
while(clockThread==myThread) { repaint(); //通過(guò)repaint方法調(diào)用paint方法
try
{
Thread.sleep(1000); //休眠1秒
}
catch (InterruptedException e){}
}
}
public void paint(Graphics g)
{
r1=(int)(Math.random()*255); //通過(guò)調(diào)用Math類(lèi)的random產(chǎn)生隨機(jī)數(shù)
g1=(int)(Math.random()*255); //再通過(guò)隨機(jī)數(shù)分別設(shè)置三原色,紅綠藍(lán)
b1=(int)(Math.random()*255);
Color c=new Color(r1,g1,b1); //創(chuàng)建一個(gè)顏色對(duì)象
g.setColor(c); //設(shè)置顏色
now=Calendar.getInstance(); //獲得系統(tǒng)當(dāng)前時(shí)間
s1=now.get(now.HOUR)+"時(shí)"
+now.get(now.MINUTE)+"分"
+now.get(now.SECOND)+"秒";
Font f=new Font("",1,size); //設(shè)置字體
g.setFont(f);
g.drawString(s1,10,50); //顯示指定大小顏色的字符串
}
public void stop() //調(diào)用stop方法,停止線程
{
clockThread=null;
}
}
<pre class="html" name="code"><html>
<Applet code="clock.class" width=300 height=100>
<param name=s1 value=s1>
<param name=size value=30>
</Applet>
</html></pre><br>
<pre></pre>
<p> </p>
<pre></pre>
<div style="padding-top:20px">
<p style="font-size:12px;">利用線程實(shí)現(xiàn)動(dòng)態(tài)顯示系統(tǒng)時(shí)間</p>
</div>
這就是如何利用線程實(shí)現(xiàn)動(dòng)態(tài)顯示系統(tǒng)時(shí)間的方法,希望對(duì)大家的學(xué)習(xí)有所幫助。
- 系統(tǒng)時(shí)間改為2000年 修改系統(tǒng)時(shí)間病毒
- javascript 顯示當(dāng)前系統(tǒng)時(shí)間代碼
- sql server 獲取系統(tǒng)時(shí)間的方法
- 校準(zhǔn)系統(tǒng)時(shí)間的VBS代碼
- js顯示當(dāng)前系統(tǒng)時(shí)間的代碼
- jQuery動(dòng)態(tài)地獲取系統(tǒng)時(shí)間實(shí)現(xiàn)代碼
- Dos下獲取系統(tǒng)時(shí)間的代碼
- jsp實(shí)現(xiàn)頁(yè)面實(shí)時(shí)顯示當(dāng)前系統(tǒng)時(shí)間的方法
- TextView顯示系統(tǒng)時(shí)間(時(shí)鐘功能帶秒針變化
- asp.net中頁(yè)面顯示當(dāng)前系統(tǒng)時(shí)間附圖
- Android調(diào)用系統(tǒng)時(shí)間格式顯示時(shí)間信息
- C#實(shí)現(xiàn)修改系統(tǒng)時(shí)間的方法
- C++設(shè)置系統(tǒng)時(shí)間及系統(tǒng)時(shí)間網(wǎng)絡(luò)更新的方法
- C++獲取當(dāng)前系統(tǒng)時(shí)間的方法總結(jié)
- java顯示當(dāng)前的系統(tǒng)時(shí)間
相關(guān)文章
Java多線程高并發(fā)中解決ArrayList與HashSet和HashMap不安全的方案
ArrayList實(shí)現(xiàn)了可變大小的數(shù)組。它允許所有元素,包括null。ArrayList沒(méi)有同步,HashMap和Hashtable類(lèi)似,不同之處在于HashMap是非同步的,并且允許null,關(guān)于HashSet有一件事應(yīng)該牢記,即就條目數(shù)和容量之和來(lái)講,迭代是線性的,接下來(lái)讓我們?cè)敿?xì)來(lái)了解吧2021-11-11
10個(gè)Elasticsearch查詢的實(shí)用技巧分享
Elasticsearch是一個(gè)非常流行的搜索引擎,已經(jīng)成為了許多企業(yè)的首選解決方案。本文將向大家介紹10個(gè)實(shí)用的Elasticsearch查詢技巧,并配上對(duì)應(yīng)的代碼示例,希望對(duì)大家有所幫助2023-04-04
SpringMVC中RequestBody注解的List參數(shù)傳遞方式
這篇文章主要介紹了SpringMVC中RequestBody注解的List參數(shù)傳遞方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10
淺談Java虛擬機(jī)對(duì)內(nèi)部鎖的四種優(yōu)化方式
這篇文章主要介紹了淺談Java虛擬機(jī)對(duì)內(nèi)部鎖的四種優(yōu)化方式,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
Spring?Boot:Idea從零開(kāi)始初始化后臺(tái)項(xiàng)目的教程
這篇文章主要介紹了Spring?Boot:Idea從零開(kāi)始初始化后臺(tái)項(xiàng)目的教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12
Maven介紹與配置+IDEA集成Maven+使用Maven命令小結(jié)
Maven是Apache軟件基金會(huì)的一個(gè)開(kāi)源項(xiàng)目,是一個(gè)優(yōu)秀的項(xiàng)目構(gòu)建管理工具,它用來(lái)幫助開(kāi)發(fā)者管理項(xiàng)目中的 jar,以及 jar 之間的依賴(lài)關(guān)系、完成項(xiàng)目的編譯、測(cè)試、打包和發(fā)布等工作,本文給大家介紹Maven介紹與配置+IDEA集成Maven+使用Maven命令,感興趣的朋友一起看看吧2024-01-01
Java連接數(shù)據(jù)庫(kù),及增刪改查的示例
這篇文章主要介紹了Java連接數(shù)據(jù)庫(kù),及增刪改查的示例,幫助大家更好的利用Java處理數(shù)據(jù),感興趣的朋友可以了解下2020-10-10
java實(shí)現(xiàn)動(dòng)態(tài)編譯并動(dòng)態(tài)加載
這篇文章主要介紹了java實(shí)現(xiàn)動(dòng)態(tài)編譯并動(dòng)態(tài)加載,需要的朋友可以參考下2021-04-04

