ساخت کنترل به صورت پویا در vb6

۱۸ خرداد ۱۳۹۰

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

 

1 دیدگاه

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *