用一个TIMMER。每隔几秒改变一个label的LEFT值,不就可以动了吗?

解决方案 »

  1.   

    电脑报2001版有个用vb实现的效果,也是利用了left这个函数,自己看看吧,不过我还是同意楼上的
      

  2.   

    我是VB程序员所以只能给你VB的实现方法。希望能有用。我现在在学Delphi,以后还请多多关照!
    Private Sub Timer4_Timer()
    Label10.Caption = Right$(Label10.Caption, Len(Label10.Caption) - 1) & Left$(Label10.Caption, 1)
    End Sub
      

  3.   

    我认为简单的移动label效果并不理想,当滚动文本速度较快、文本较多的时候,就会有严重的闪烁。
    我的思路是利用TCanvas,并在每次滚动后,利用fillrect方法消除残影。
    具体代码,因为我现在没Delphi,关于这个问题也好久没接触过了,抱歉,我写不出来。
    大概就是
    canvas移动//同label的移动;
    canvas.fillrect(文本所在区域);