ساخت کنترل به صورت پویا در vb6
شاید زمانی خواسته باشید که در حال اجرای نرم افزار یک کنترل مثل دکمه یا جعبه تصویر ایجاد نمایید. برای این کار دو روش وجود دارد.
۱- در گام نخست یک TextBox با نام txtarray بر روی صفحه ایجاد کنید و مقدار Index را صفر قرار دهید. سپس کد زیر را در فرم وارد کنید:
Private Sub Form_Load()
Dim i As Integer
txtArray(0).text = "0"
For i = 1 To 5
Load txtArray(i)
With txtArray(i)
.Text = i
.Visible = True
.Top = txtArray(i - 1).Top + 550
End With
Next i
End Subدر زمان اجرا ۵ تکست باکس بر روی صفحه ایجاد خواهد شد.
۲- در روش دوم بدون ایجاد هیچ کنترل پیش ساختهای میتوانید فرآیند موردنظر را انجام دهید. تنها کافیست کد زیر را در فرم وارد نمایید:
option Explicit
'
Dim withevents Cmd1 as CommandButton
'
private Sub Form_Load()
set Cmd1 = Controls.Add("vb.commandbutton", "Cmd1")
Cmd1.Width = 2000
Cmd1.Top = me.Height / 2 - Cmd1.Height / 2 - 100
Cmd1.Left = me.Width / 2 - Cmd1.Width / 2 - 100
Cmd1.Caption = "Dynamic Button"
Cmd1.Visible = true
End Sub
'
private Sub Cmd1_click()
MsgBox "I have been Created Dynamically at Run-time", _
, "Dynamic Controls"
End Sub
برگرفته از:
http://www.codeguru.com/vb/controls/vb_activex/activex/article.php/c3499
عالیه