VB编程求助:制作一个提取系统时间并正确走时的时钟

VB编程求助:制作一个提取系统时间并正确走时的时钟,第1张

Private

Sub

Timer1_Timer()

miao

=

Second(Time)

+

1

miao

=

61

-

miao

fen

=

Minute(Time)

fen

=

60

-

fen

shi

=

Hour(Time)

If

shi

>=

12

Then

shi

=

shi

-

12

'因为一天之内时针要走二十四个钟头,也就是要走两圈,所以将下午和晚上的时间减去十二,就可以确定时针准确的位置

shi

=

(12

-

shi

-

(1

-

fen

/

59))

5

Cls

Dim

a

a

=

Form1ScaleHeight

/

2

Form1Width

=

Form1ScaleHeight

+

150

'画刻度

Form1Circle

(Form1ScaleHeight

/

2,

a),

a

-

a

002

Form1Circle

(Form1ScaleHeight

/

2,

a),

a

003

Dim

x

As

Double

Dim

y

As

Double

For

i

=

0

To

60

x

=

(1

-

Sin(i

/

60

2

31415926))

(a

-

a

005)

+

a

005

y

=

(1

-

Cos(i

/

60

2

31415926))

(a

-

a

005)

+

a

005

X1

=

(1

-

Sin(i

/

60

2

31415926))

(a

-

a

007)

+

a

007

Y1

=

(1

-

Cos(i

/

60

2

31415926))

(a

-

a

007)

+

a

007

Line

(x,

y)-(X1,

Y1),

QBColor(3)

Next

i

For

i

=

0

To

11

x

=

(1

-

Sin(i

/

12

2

31415926))

(a

-

a

005)

+

a

005

y

=

(1

-

Cos(i

/

12

2

31415926))

(a

-

a

005)

+

a

005

X1

=

(1

-

Sin(i

/

12

2

31415926))

(a

-

a

01)

+

a

01

Y1

=

(1

-

Cos(i

/

12

2

31415926))

(a

-

a

01)

+

a

01

Line

(x,

y)-(X1,

Y1),

QBColor(1)

Next

i

'画秒针的线

x

=

(1

-

Sin(miao

/

60

2

31415926))

(a

-

a

01)

+

a

01

y

=

(1

-

Cos(miao

/

60

2

31415926))

(a

-

a

01)

+

a

01

Line

(a,

a)-(x,

y),

QBColor(12)

'画介针的线

x

=

(1

-

Sin(fen

/

60

2

31415926))

(a

-

a

02)

+

a

02

y

=

(1

-

Cos(fen

/

60

2

31415926))

(a

-

a

02)

+

a

02

Line

(a,

a)-(x,

y),

QBColor(5)

'画时针的线

x

=

(1

-

Sin((shi)

/

60

2

31415926))

(a

-

a

03)

+

a

03

y

=

(1

-

Cos((shi)

/

60

2

31415926))

(a

-

a

03)

+

a

03

Line

(a,

a)-(x,

y),

QBColor(6)

End

Sub

这是写给你的代码,添加个时钟控件,设置好Interval,把代码粘贴进去就可以了。

Dim a As String

a = Str(Time)'或者是a = Str(Now),区别:Time没有日期,Now有日期

Open "C:\1txt" For Output As #1

Print #1, a

Close #1

建议去查阅相关资料,毕竟在这里只能给你大致的讲一下,下面给出VB显示系统时间的代码:

text1text="今天是" & Format$(Now,"Long Date") ;

text2text=Format$(Now,"dddd") ;

text3text=Format$(Now,"Long Time");

右击控件栏-部件-Microsoft Tabbed Dialong Control60。就能添加选项卡或者Microsoft Windows Common Control60(sp6),选择Tabstrip控件Webbrowser控件用数组解决。

Visual Basic是一种由 Microsoft 公司开发的结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。

在label1上显示时间,

窗体控件:一个label,一个计时器

代码如下:

Private

Sub

Form_Load()

Timer1Interval

=

1000

End

Sub

Private

Sub

Timer1_Timer()

Label1Caption

=

Time

End

Sub

在vb中要做到微秒级的计时,用api:QueryPerformanceFrequency和QueryPerformanceCounter

不过用这种方法有时会罢工。。。自己按实际情况决定吧。。。。

用这个,你可以改一下,试试看吧!

Option Explicit

' 声明函数

Private Declare Function QueryPerformanceFrequency Lib "kernel32" (lpFrequency As LARGE_INTEGER) As Long

Private Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As LARGE_INTEGER) As Long

' 声明结构

Private Type LARGE_INTEGER

LowPart As Long

HighPart As Long

End Type

Private Sub Form_Load()

Dim PFrequency As LARGE_INTEGER

' 获得高精度运行计数器的频率

QueryPerformanceFrequency PFrequency

' 延时 1000微妙

SleepEx (PFrequencyLowPart / 1000000) 1000, 0

End Sub

' 实现延时功能

Private Function SleepEx(ByVal LowPart As Long, HighPart As Long) As Long

Dim Interval As LARGE_INTEGER

Dim Privious As LARGE_INTEGER

Dim Current As LARGE_INTEGER

' 获得高精度运行计数器的数值

Call QueryPerformanceCounter(Privious)

Current = Privious

IntervalLowPart = LowPart

IntervalHighPart = HighPart

' 通过比较两次计数器的数值的差实现精确延时

Do While (Abs((CurrentHighPart 2 ^ 16) + CurrentLowPart) _

- Abs(PriviousHighPart 2 ^ 16) + PriviousLowPart) < _

(Abs(IntervalHighPart 2 ^ 16) + IntervalLowPart)

Call QueryPerformanceCounter(Current)

Loop

SleepEx = 0

End Function

以上就是关于VB编程求助:制作一个提取系统时间并正确走时的时钟全部的内容,包括:VB编程求助:制作一个提取系统时间并正确走时的时钟、vb中如何才能得到系统的时间、VB显示系统时间的代码是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9622859.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存