ساخت کنترل به صورت پویا در 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
عالیه