INOCHI-GAPTEK
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Menyisipkan Kontrol Baru

Go down

Menyisipkan Kontrol Baru Empty Menyisipkan Kontrol Baru

Post by PujanggaBageur Fri Aug 08, 2008 5:04 am

Menambahkan sebuah kontrol pada saat design mode memang mudah sekali. Anda tinggal memilih jenis kontrol yang disediakan ToolBox, kemudian melakukan dragging pada badan form. Bisakah Anda menciptakan atau menambahkan kontrol baru pada saat runtime atau melalui jendela kode?
Teknik berikut ini adalah teknik untuk menciptakan kontrol baru. Cukup aneh memang, Anda tidak memasukkan kontrol apapun, namun ketika program berjalan form tiba-tiba menciptakan kontrol-kontrol baru. Lebih aneh lagi kontrol-kontrol ini dapat diperintah layaknya kontrol yang Anda desain saat design mode.

Berikut ini contoh program untuk menyisipkan sebuah PictureBox, beberapa TextBox dan sebuah VScrollBar yang dijalankan ketika runtime.

Stop! Tidak perlu melakukan design apapun, ketikkan kode di bawah ini.

Code:

Option Explicit

Dim ctl As Control
Dim i As Long
Dim AkhirTinggi As Long
Dim AwalTop As Long

Dim JumTextBox As Integer
Dim myVsb As Control

Dim WithEvents vsbScroll As VScrollBar
Dim WithEvents Picture1 As PictureBox

Private Sub Form_Load()
    'Membuat PictureBox
    Set ctl = Me.Controls.Add("VB.PictureBox", _
        "Picture1")
    ctl.Visible = True
   
    ctl.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
    Set Picture1 = ctl
   
    'Membuat TextBox baru
    JumTextBox = 20 '<-- Banyaknya TextBox
    For i = 0 To JumTextBox
        Set ctl = Me.Controls.Add("VB.TextBox", _
        "Text" & CStr(i))
        'Agar kontrol ditampung PictureBox
        Set ctl.Container = Picture1
        'Memposisikan dan mengatur ukuran TextBox
        ctl.Move 60, 60 + (330 * i), 2000, 285
       
        AkhirTinggi = i * (60 + (330 * i) + 285)
        'Mengisi properti Text
        'sesuai dengan nama TextBox
        ctl.Text = ctl.Name
       
        'Menampilkan TextBox
        ctl.Visible = True
    Next
   
    'Membuat ScrollBar vertical
    Set ctl = Me.Controls.Add("VB.VScrollBar", _
        "vsbScroll")
    Set ctl.Container = Picture1
    ctl.Move Picture1.Width - 350, 0, 280, Picture1.Height - 100
    ctl.Max = JumTextBox * 300 + Picture1.Height
    ctl.SmallChange = 100
    ctl.LargeChange = 200
    ctl.Visible = True
   
    Set vsbScroll = ctl
End Sub

Sub vsbScroll_Change()
    'Memindahkan posisi TextBox
    For Each ctl In Me.Controls
        If TypeOf ctl Is TextBox Then
            ctl.Top = ctl.Top + (AwalTop - vsbScroll.Value)
        End If
    Next
    AwalTop = vsbScroll.Value
End Sub

Sub vsbScroll_Scroll()
    vsbScroll_Change
End Sub

Private Sub VScroll1_Change()
    For Each ctl In Me.Controls
        If TypeOf ctl Is TextBox Then
            ctl.Top = ctl.Top + (AwalTop - VScroll1.Value)
        End If
    Next
   
    AwalTop = VScroll1.Value
End Sub
Jalankan program (F5), lihatlah apa yang terjadi! CObalah untuk mengklik atau menggerakan batang penggulung (VScrollBar).
PujanggaBageur
PujanggaBageur
Admin
Admin

Jumlah posting : 148
Join date : 07.08.08
Age : 41
Lokasi : Cirebon

https://inochi.indonesianforum.net

Kembali Ke Atas Go down

Kembali Ke Atas

- Similar topics

 
Permissions in this forum:
Anda tidak dapat menjawab topik