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

مبین سافت خرداد ۱۸, ۱۳۹۰ 1 Comment

 

شاید زمانی خواسته باشید که در حال اجرای نرم افزار یک کنترل مثل دکمه یا جعبه تصویر ایجاد نمایید. برای این کار دو روش وجود دارد.
۱- در گام نخست یک ‍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

 

Comment (01)

  1. دی ۷, ۱۳۹۲

    عالیه

    Reply

دیدگاهتان را بنویسید

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