Home > Visual Basic > Membuat animasi sederhana menggunakan objek timer

Membuat animasi sederhana menggunakan objek timer

January 8, 2010

Objek timer selain digunakan untuk menampilkan tanggal dan jam secara realtime, juga bisa digunakan untuk membuat animasi sederhana salah satunya dengan memanfaatkan objek label. Silahkan buat rancangan form seperti berikut :

copy paste kode berikut :

Option Explicit

Dim x           As Integer
Dim gerakX      As Integer
Dim gerakY      As Integer
Dim zigZagX     As Integer
Dim zigZagY     As Integer
Dim i           As Integer

Private Sub Form_Load()
    gerakY = 20
    x = 20
    zigZagX = 20
    zigZagY = 20
End Sub

Source code untuk event _Timer (gunakan salah satu atau solusi lain objek timernya dijadikan array kemudian tinggal seleksi berdasarkan index array)
1. Teks berjalan dari kiri ke kanan

lblAnimasi.Move lblAnimasi.Left - 15
If lblAnimasi.Left < -lblAnimasi.Width Then lblAnimasi.Left = picPanel.Width

2. Teks mantul dari kiri ke kanan

lblAnimasi.Move lblAnimasi.Left - x
If lblAnimasi.Left < picPanel.ScaleLeft Then
    x = -20
ElseIf lblAnimasi.Left + lblAnimasi.Width > picPanel.ScaleWidth + picPanel.ScaleLeft Then
    x = 20
End If

3. Teks mantul dari atas ke bawah

lblAnimasi.Move lblAnimasi.Left + gerakX, lblAnimasi.Top + gerakY
If lblAnimasi.Top < picPanel.ScaleTop Then
    gerakY = 20
ElseIf lblAnimasi.Top + lblAnimasi.Height > picPanel.ScaleHeight + picPanel.ScaleTop Then
    gerakY = -20
End If

4. Teks zig zag

lblAnimasi.Move lblAnimasi.Left + zigZagX, lblAnimasi.Top + zigZagY
If lblAnimasi.Left < picPanel.ScaleLeft Then
    zigZagX = 20
ElseIf lblAnimasi.Left + lblAnimasi.Width > picPanel.ScaleWidth + picPanel.ScaleLeft Then
    zigZagX = -20
ElseIf lblAnimasi.Top < picPanel.ScaleTop Then
    zigZagY = 20
ElseIf lblAnimasi.Top + lblAnimasi.Height > picPanel.ScaleHeight + picPanel.ScaleTop Then
    zigZagY = -20
End If

Contoh source code bisa didownload disini. Selamat mencoba🙂

  1. anto
    January 11, 2012 at 10:34 pm

    terima kasih ya saya mau coba

  2. seno tegal
    June 30, 2012 at 4:06 pm

    Pak/Bu ,,
    saya mau tanya kalo yang animasi ke 3 itu gimana ya biar bisa naik terus aja jangan naik turun gitu ,, bisa ndak Pak/Bu ?

    • June 30, 2012 at 9:01 pm

      Coba seperti ini om :

      lblAnimasi.Move lblAnimasi.Left + GerakX, lblAnimasi.Top - GerakY
      If lblAnimasi.Top < -200 Then lblAnimasi.Top = picPanel.ScaleHeight + picPanel.ScaleTop
      
  3. February 4, 2014 at 2:27 pm

    cara bikin array nya gimana ya ?? saya nyoba kok lblAnimasi.Move nya error ya ? terima kasih

  1. April 16, 2014 at 9:12 am
Comments are closed.
%d bloggers like this: