快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

调用DIRECTX的组件实现的时钟

下面的代码是调用的DirectX的组件实现的时钟。它有三根指针,会实时地随系统时间的改变而改变。
不过我没有做刻度,因为我觉得用程序画出来的刻度不美丽,用PHOTOSHOP画一口钟作为背景要美丽多了。


<html>
<head>
<title>指针式时钟</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<div id="LayClock" style="position:absolute; width:101; height:101px; z-index:2; left: 203px; top: 101px">
<object id="DAControl" width=101 height=101 align=LEFT hspace=0
classid="CLSID:B6FFC24C-7E13-11D0-9B47-00C04FC2F51D">
</object>
<SCRIPT LANGUAGE="VBScript">
<!--
Set m = DAControl.PixelLibrary
pi = 3.14159265359
Sub window_onLoad
a = time
min1 = minute(time)
hr1 = hour(time)
sec1 = second(time)
Set xPos = m.Mul(m.DANumber(150), m.Cos(m.Mul(m.LocalTime,m.DANumber(0.3))))
Set yPos = m.Mul(m.DANumber(35), m.Cos(m.Mul(m.LocalTime,m.DANumber(0.5))))
Set clock = m.Overlay(hands(hr1,min1,sec1),hands(hr1,min1,sec1))
DAControl.Image = clock
DAControl.Start
End Sub
Function hands(hr,min,sec)
Set bvr60 = m.DANumber(60)
Set secFromMidnight = m.Add(m.DANumber(hr*3600+min*60+sec),m.LocalTime)
Set secBvr = m.Mod(secFromMidnight,bvr60)
Set minBvr = m.Mod(m.Div(secFromMidnight,bvr60),bvr60)
Set hrBvr = m.Mod(m.Div(secFromMidnight,m.DANumber(3600)),m.DANumber(12))
ptsSec = Array( -10, -2, 42, -1, 42, 1, -10,2 )
ptsMin = Array(-7, -2, 36, -1, 36, 1, -7, 2 )
ptsHr = Array(-5, -3, 32, -1, 32, 1, -5, 3 )
Set temp1 = m.Mul(m.DANumber(-pi/30),m.Sub(secBvr,m.DANumber(15)))
Set temp2 = m.Mul(m.DANumber(-pi/30),m.Sub(minBvr,m.DANumber(15)))
Set temp3 = m.Mul(m.DANumber(-pi/6),m.Sub(hrBvr,m.DANumber(3)))
Set imgSec = m.PolyLine(ptsSec).Fill(m.DefaultLineStyle,m.SolidColorImage(m.cyan))
Set imgSec = imgSec.TransForm(m.Rotate2Anim(temp1))
Set imgMin = m.PolyLine(ptsMin).Fill(m.DefaultLineStyle,m.SolidColorImage(m.yellow))
Set imgMin = imgMin.TransForm(m.Rotate2Anim(temp2))
Set imgHr = m.PolyLine(ptsHr).Fill(m.DefaultLineStyle,m.SolidColorImage(m.green))
Set imgHr = imgHr.TransForm(m.Rotate2Anim(temp3))
Set hands = m.Overlay(imgSec,m.Overlay(imgMin,imgHr))
End Function
-->
</SCRIPT></div>
</body>
</html>
返回类别: 教程
上一教程: ASP调用ORACLE存储过程
下一教程: 在ASP页面中插入EXCEL文件

您可以阅读与"调用DIRECTX的组件实现的时钟"相关的教程:
· 巧用FILESYSTEM组件实现WEB应用中的本地特定打印
· WEB打印设置解决方案三(FILESYSTEM组件实现WEB打印)
· 在VB组件内调用EXCEL2000实现GIF饼图
· 无组件实现文件上传/下载
· 不用组件实现上载功能(1)
    微笑服务 优质保证 索取样品