Membuat animasi sederhana menggunakan objek timer vb net

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 :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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
1
2
lblAnimasi.Move lblAnimasi.Left - 15
If lblAnimasi.Left < -lblAnimasi.Width Then lblAnimasi.Left = picPanel.Width
2. Teks mantul dari kiri ke kanan
1
2
3
4
5
6
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
1
2
3
4
5
6
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
1
2
3
4
5
6
7
8
9
10
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 ðŸ™‚

Comments

Popular posts from this blog

Cara Membuat Template/Frame Instagram seperti Indozone