برگزیده های پرشین تولز

ایجاد کنترل با استفاده از کدنویسی ؟؟؟؟

.: Mahyar :.

کاربر تازه وارد
تاریخ عضویت
21 جولای 2005
نوشته‌ها
73
لایک‌ها
0
سن
37
محل سکونت
Toronto
:f34r: من تو یه جایی از برنامم نیاز دارم بر اساس اطلاعاتی که از کاربر می گیرم یکسری Label و TextBox ایجاد کنم می خواستم بدونم کد ایجاد این کنترل ها چیه !!!!
 

Parham

Registered User
تاریخ عضویت
24 سپتامبر 2003
نوشته‌ها
1,042
لایک‌ها
2
اگر با دات نت کار میکنی:
کد:
        Dim txtNew As New TextBox
        txtNew.Location = New Point(100, 100)
        txtNew.Text = "New Text Box!"
        Me.Controls.Add(txtNew)

اگر VB 6 کار میکنی دو راه داری یکی کد زیر که افزودن Event براش یک مقدار مشکله (اگر خواستی بگو تا کدش رو بزارم):
کد:
   Form1.Controls.Add "VB.Label", "lblNew", Form1
   With Form1!lblNew
      .Visible = True
      .Width = 2000
      .Caption = "Dynamic Label"
   End With

راه دیگه اینه که مثلا یک کنترل Label تو حالت Design اضافه کنی و Index اون رو ۰ بزاری. که میشه یک آرایه. حالا به راحتی میتونی با دستور Load هر تعدادی که نیاز هست و البته تا جایی که حافظه اجازه میده از اون کنترل ایجاد کنی و برای Events هم تو حالت Design باید کد رو برای همون کنترل اولیه که ایجاد کردی بنویسی و حتما میدونی که آرایه های کنترلی رو با Index میتونی تو رویدادها تشخیص بدی و در صورت نیاز کد جدا برای هر کدوم تعریف کنی.
فرض می‌کنیم که یک Label با نام lblBase1 اضافه کردی:
کد:
    iIndex = lblBase1.UBound + 1
    Load lblBase1(iIndex)
    lblBase1(iIndex).Caption = "Label " & CStr(iIndex)
    lblBase1(iIndex).Visible = True
تو این کد ما ابتدا اولین Index ای رو که میتونیم ایجاد کنیم با استفاده از خط اول بدست میاریم و بعد همون رو لود میکنیم و الی آخر ...
من یک برنامه نمونه برای این آخری ضمیمه میکنم که برای رویداد کلیک هم یک کد ساده نوشتم. امیدوارم که توضیحات مقبول افتد!:wacko:
 

فایل های ضمیمه

  • prjDynamicControls.zip
    1.7 KB · نمایش ها: 10

.: Mahyar :.

کاربر تازه وارد
تاریخ عضویت
21 جولای 2005
نوشته‌ها
73
لایک‌ها
0
سن
37
محل سکونت
Toronto
ایول دمت گرم با روش آخرت خیلی حال کردم
 
بالا