用VB编写一个闹钟程序

用VB编写一个闹钟程序,第1张

拉一个按钮控件和一个Timer控件,Timer控件Interval设为1000,Enable设为false。Private Declare Function mciSendString Lib "winmmdll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrRetumString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long

Dim t As Integer '计算时间

Dim s As Integer '提醒间隔时间

Dim mp3file As String 'mp3文件路径

Private Sub Command1_Click()

'停止播放

Call mciSendString("Stop " & mp3file, 0&, 0, 0)

End Sub

Private Sub Form_Load()

t = 0

s = 3 '一小时等于3600秒

mp3file = "D:\yixioump3"

Timer1Enabled = True

End Sub

Private Sub Timer1_Timer()

t = t + 1

If t = s Then

'播放音乐

Call mciSendString("Close" & mp3file, 0&, 0, 0)

Call mciSendString("Open " & mp3file, 0&, 0, 0)

Call mciSendString("play " & mp3file, 0&, 0, 0)

'切换间隔时间

If s = 3600 Then

s = 900

Else

s = 3600

End If

End If

End Sub

楼上的代码这么长,还简单?

无语

我给你写了一个,这个才是真正的简单实用,呵呵!

加个timer控件

把interval

属性调成

1000

毫秒

也就是

1秒

在加两个

text

text1text=3

text2text=00

在加个按钮

开始倒计时

就行了

程序代码如下:

private

sub

form_load()

timer1enabled

=

false

end

sub

private

sub

timer1_timer()

if

(text2text

<=

0)

then

text2text

=

59

text1text

=

text1text

-

1

else

text2text

=

text2text

-

1

end

if

end

sub

private

sub

command1_click()

timer1enabled

=

true

end

sub

如果有什么地方不懂,欢迎联系我!

楼主,我觉得你的想法是很好的创意,我也打算做一个,但奈何时间不多,就只做了个开始,以后再慢慢完善吧。在form1中添加timer1,label1,添加以下代码即可

Private Sub Form_Load()

Timer1Interval = 1000

Label1FontSize = 30

End Sub

Private Sub Timer1_Timer()

Label1Caption = Now

End Sub

你的代码有几处问题:

1

Private Sub Form_Load()

Dim nwidth, nheight, nhourlen, nminlen, nseclen '你把nmainlen打错了

Dim Picture1

这些变量是过程变量,不能再其他过程使用,且当Form_Load事件结束时,这些变量就不存在了。所以要把这些变量提前到通用区域,也就是代码的最前面。

2

Dim Picture1

这什么意思呀?我想,你是直接定义一个PictureBox控件变量,然后就能使用它。这是错误的,要么你就老实一点在窗体上添加PictureBox控件,要么你就用动态添加PictureBox控件。算了,你还是老实一点在窗体上添加PictureBox控件吧。

3

nwidth = Picture1Width - 20

nheight = Picture1Height - 10

这有问题。如果PictureBox控件的ScaleMode属性改变时,就会出现意想不到的结果了。改为如下:

nwidth = Picture1ScaleWidth

nheight = Picture1ScaleHeight

4

nminute = Minute(Time()) + nsecond / 60

nhour = (Hour(Time()) Mod 12) + nminute / 60 + nsecond / 3600

因为nminute已经包含了nsecond,所以nhour的计算就不需要再加上nsecond了,改为nhour = (Hour(Time()) Mod 12) + nminute / 60就行了。

5

carc_是什么意思呀?你自定义的函数?但你没有定义呀。

6

Picture1Line里的画线有点问题。

改成如下:

在通用区域Dim Pi As Single

在Form_Load事件Pi=31415926

在Timer1_Timer事件里:

Dim nSecond, nMinute, nHour As Integer

Dim X As Single, Y As Single

Picture1Cls

nSecond = Second(Time())

nMinute = Minute(Time()) + nSecond / 60

nHour = (Hour(Time()) Mod 12) + nMinute / 60

X = nHourlen Sin(nHour 30 / 180 Pi)

Y = nHourlen Cos(nHour 30 / 180 Pi)

Picture1DrawWidth = 3

Picture1ForeColor = RGB(255, 0, 0)

Picture1Line (nWidth / 2 - X / 10, nHeight / 2 + Y / 10)-(nWidth / 2 + X, nHeight / 2 - Y)

X = nMinlen Sin(nMinute 6 / 180 Pi)

Y = nMinlen Cos(nMinute 6 / 180 Pi)

Picture1DrawWidth = 2

Picture1ForeColor = RGB(0, 255, 0)

Picture1Line (nWidth / 2 - X / 10, nHeight / 2 + Y / 10)-(nWidth / 2 + X, nHeight / 2 - Y)

X = nSeclen Sin(nSecond 6 / 180 Pi)

Y = nSeclen Cos(nSecond 6 / 180 Pi)

Picture1DrawWidth = 1

Picture1ForeColor = RGB(0, 0, 255)

Picture1Line (nWidth / 2 - X / 10, nHeight / 2 + Y / 10)-(nWidth / 2 + X, nHeight / 2 - Y)

7

没有刻度盘。在Form_Load事件添加代码如下:

Dim i As Integer

Dim X As Single, Y As Single

Picture1AutoRedraw = True

Picture1DrawWidth = 8

Picture1ForeColor = RGB(255, 255, 0)

For i = 1 To 12

X = (nSeclen + 80) Sin(i 30 / 180 Pi)

Y = (nSeclen + 80) Cos(i 30 / 180 Pi)

Picture1PSet (nWidth / 2 + X, nHeight / 2 - Y)

X = nSeclen 12 Sin(i 30 / 180 Pi) - Picture1TextHeight(CStr(i)) / 2

Y = nSeclen 12 Cos(i 30 / 180 Pi) + Picture1TextHeight(CStr(i)) / 2

Picture1CurrentX = nWidth / 2 + X

Picture1CurrentY = nHeight / 2 - Y

Picture1Print CStr(i)

Next i

Picture1AutoRedraw = False

以上就是关于用VB编写一个闹钟程序全部的内容,包括:用VB编写一个闹钟程序、怎样用vb做倒计时时钟、如何用VB制作个多功能时钟等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/9789070.html

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

发表评论

登录后才能评论

评论列表(0条)

保存