您的位置:首页 > 编程语言 > VB

对一段VB代码的总结~

2009-05-19 21:07 190 查看
今天中午做了个滚动字幕的实例,和基础培训百例里的不同的是,要求控件来回滚动,从左到右从右到左的滚动,一开始按着面向对象的编程思想想了想,主要的架子就是控件滚动、一个计时触发的就可以了。

1、

Private Sub Timer1_Timer()
Label1.Left = Label1.Left + 2000

If Label1.Left >= Me.Width Then
Label1.Left = Me.Width
Label1.Left = Label1.Left - 2000
End If
If Label1.Left < Me.Width Then
label1.Left= Label1.Left+2000
End  If


这几行代码并没有实现那种来回滚动效果,而是在第一次向左返回的时候停住了,在那里闪,这就是因为没有对两个If具体判断取舍,没有很好的间隔这两个判断,导致试验失败。

2、

Option Explicit

Private Sub Timer1_Timer()
'判断label1向右的位置
Label1.Left = Label1.Left + 2000

If Label1.Left > Me.Width Then
Label1.Left = Me.Width
Timer2.Enabled = True
Timer1.Enabled = False
End If

End Sub

Private Sub Timer2_Timer()
'判断label1在返回左边时的位置
If Label1.Left <= Me.Width Then
Label1.Left = Label1.Left - 2000
If Label1.Left <= 0 Then
Label1.Left = Label1.Left + 2000
Timer1.Enabled = True
Timer2.Enabled = False
End If
End If
End Sub


这是第二个,用到了两个timer作为开关使用,判断条件互相限制使用。基本达到了预期的效果,试验成功。

3、<高手的代码>

Option Explicit
Dim blnFlag As Boolean
Private Sub Timer1_Timer()
If Label1.Left <= 0 Then
blnFlag = True
ElseIf Label1.Left >= Me.ScaleWidth - Label1.Width Then
blnFlag = False
End If

If blnFlag = True Then
'从左到右
Label1.Left = Label1.Left + 100
Else
'到头
Label1.Left = Label1.Left - 100
End If
End Sub


总结:

看看人家这代码,最起码从气质上就已经输给了人家,从变量的声明、条件的判断、使用的控件,就可想一个优秀的程序员应该做的要很多,基本素质要很强。

比较就是要反思的,反思后我知道了,程序代码的编写是要有很强的基本功的,难怪米老师说只要看一个人编写的代码如何,就知道这个人的业务素质如何呢,还真是这个样子的。
专业的编写 处处显现出“活”气,而自己现在的确是这么的沉闷、老套,终究还是要成长的,量变到质变的过程是不可以缩水的,此刻想起了那句话“不要混生活,小心生活混了你”,真的自己修道路还是要踏踏实实的走下去....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: