[VB]这个电子时钟怎么这么迟钝?
Carneades 2009-02-01 16:50
这是一个变色电子时钟,按键调整颜色。
但是时钟只有在调整颜色的瞬间变化。请高手看下,究竟怎么回事。
代码如下:
Private Sub form1_load()
Label1.Caption = Time
End Sub
Private Sub Command1_Click()
Label1.ForeColor = vbRed
Label1.Caption = Time
End Sub
Private Sub Command2_Click()
Label1.ForeColor = vbBlue
Label1.Caption = Time
End Sub
Private Sub command3_click()
End
End Sub
[i=s] 本帖最后由 等电子的氯 于 2009-2-1 16:58 编辑 [/i]
你每次CommandX_click(X=1, 2)之后才改Label1.Caption,难怪呢。。
用个Timer吧~
加个Timer1,把Interval改成(0,1000]里的实数就行啦~
Private Sub Timer1_Timer()
Label1.Caption = Time
End Sub
Francisco 2009-02-01 16:59
你应该用个timer控件。
Carneades 2009-02-01 17:05
[i=s] 本帖最后由 Carneades 于 2009-2-1 17:07 编辑 [/i]
这个可以自己走起来?我今晚试试看。
谢谢楼上诸位!
bookgangtie 2009-02-02 12:45
板凳、板床正解,如果不加timer所显示的时间就是load、command1和2触发时的时间。
timer时间间隔设为一秒就好了
bookgangtie 2009-02-02 18:41
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Interval = 1000
Label1.Text = Format$(Now, "yyyy年dd月mm日hh时mm分ss秒")
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Label1.Text = Format$(Now, "yyyy年dd月mm日hh时mm分ss秒")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label1.ForeColor = Color.Red
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Label1.ForeColor = Color.Blue
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
End Sub
End Class
哎,终于搞出来了,.net的语法变了许多,而且生成的文件比较大一点
topbluecat 2009-02-03 03:32
n年以前用过VB......貌似Timer的效率是很低的.....