View Full Version : اضافه کردن Event بصورت Runtime
sohrab o
دوشنبه 25 مرداد 1389, 20:51 عصر
با سلام
من در این نمونه برنامه که Upload کردم تعدادی شی رو بصورت Runtime ایجاد کردم
حالا چطوری می تونم واسه اونا Event بنویسم؟
لطفا فایل نمونه را دریافت کنید تا کامل متوجه سوال بشید
با تشکر
sohrab o
دوشنبه 25 مرداد 1389, 20:55 عصر
دوستان اینو تو سایت پیدا کردم
http://barnamenevis.org/forum/showthread.php?t=159047&highlight=Event
اما منظور من این نیست. کنترل های من بصورت Control Array هستند
parselearn
سه شنبه 26 مرداد 1389, 03:32 صبح
سوال شما اينجا هم پرسيده شده
ولي به جوابي نرسيدن
http://visual-basic.itags.org/visual-basic/21298/
:vb.net
http://bytes.com/topic/visual-basic-net/answers/336555-handling-mousedown-dynamic-pictureboxes
(http://bytes.com/topic/visual-basic-net/answers/336555-handling-mousedown-dynamic-pictureboxes)
sohrab o
چهارشنبه 27 مرداد 1389, 14:06 عصر
سوال شما اينجا هم پرسيده شده
ولي به جوابي نرسيدن
http://visual-basic.itags.org/visual-basic/21298/
:vb.net
http://bytes.com/topic/visual-basic-net/answers/336555-handling-mousedown-dynamic-pictureboxes
(http://bytes.com/topic/visual-basic-net/answers/336555-handling-mousedown-dynamic-pictureboxes)
آره خوب
گفتم شاید اساتید ایرانی بلد باشن
M.T.P
چهارشنبه 27 مرداد 1389, 14:57 عصر
آره خوب
گفتم شاید اساتید ایرانی بلد باشن
بنده جزء اساتید نیستم اما میتونم کارتون رو راه بندازم: :لبخند: :چشمک:
Private WithEvents CmdButton As OptionButton
Private Sub Form_Load()
Dim i As Integer
Set CmdButton = Me.Controls.Add("VB.OptionButton", "cmdButton")
With CmdButton
.Move 100, 100, 700, 500
.Caption = "Hello"
.Visible = True
End With
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set CmdButton = Nothing
End Sub
Private Sub cmdButton_Click()
MsgBox "A"
End Sub
vbhamed
چهارشنبه 27 مرداد 1389, 15:30 عصر
سلام
خب شما چرا خودتون رو اذيت مي كنيد
يك دونه كنترل با عنوان Option0 با انديس 0 رو فرم بزاريد و كد زير رو بنويسيد
Private Sub Form_Load()
Dim i%
For i = 1 To 9
Load Option1(i)
With Option1(i)
.Caption = "Option " & i
.Top = i * 300
.Visible = True
End With
Next
End Sub
Private Sub Option1_Click(Index As Integer)
MsgBox Index
End Sub
sohrab o
پنج شنبه 28 مرداد 1389, 01:59 صبح
بنده جزء اساتید نیستم اما میتونم کارتون رو راه بندازم: :لبخند: :چشمک:
Private WithEvents CmdButton As OptionButton
Private Sub Form_Load()
Dim i As Integer
Set CmdButton = Me.Controls.Add("VB.OptionButton", "cmdButton")
With CmdButton
.Move 100, 100, 700, 500
.Caption = "Hello"
.Visible = True
End With
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set CmdButton = Nothing
End Sub
Private Sub cmdButton_Click()
MsgBox "A"
End Sub
دوست عزیز شما از نظر بنده استادی
اما لطفا فایل ضمینه (زمینه) رو دانلود کن آخه من دقیقا همین کارو کردم و جواب میده اما یه روش دیگه می خوام. می خوام کنترلم از نوع Control Array باشه
sohrab o
پنج شنبه 28 مرداد 1389, 02:00 صبح
سلام
خب شما چرا خودتون رو اذيت مي كنيد
يك دونه كنترل با عنوان Option0 با انديس 0 رو فرم بزاريد و كد زير رو بنويسيد
Private Sub Form_Load()
Dim i%
For i = 1 To 9
Load Option1(i)
With Option1(i)
.Caption = "Option " & i
.Top = i * 300
.Visible = True
End With
Next
End Sub
Private Sub Option1_Click(Index As Integer)
MsgBox Index
End Sub
سلام استاد
آره همین کارو کردم مثل اینکه روش دیگه ای وجود نداشت
اما نمی دونم چرا به دلم نمی شینه
آخه من زیادی رو کدام حساسم
vbhamed
جمعه 29 مرداد 1389, 00:52 صبح
سلام
از اون روش هم ميشه
در حقيقت استفاده از كلاس و نوعي ارث بري لازمه
يعني يك كلاس تعريف كني و در كلاس دوم آرايه اي از كلاس اول رو داشته باشي اما نه آرايه اي
يكم كه نه، خيلي پيچيده ميشه اما قابل انجام هستش
ولي به نظر من اين لقمه دور سر چرخوندن هست
sohrab o
شنبه 30 مرداد 1389, 10:24 صبح
سلام
از اون روش هم ميشه
در حقيقت استفاده از كلاس و نوعي ارث بري لازمه
يعني يك كلاس تعريف كني و در كلاس دوم آرايه اي از كلاس اول رو داشته باشي اما نه آرايه اي
يكم كه نه، خيلي پيچيده ميشه اما قابل انجام هستش
ولي به نظر من اين لقمه دور سر چرخوندن هست
ممنون که جواب دادی استاد
اگر لطف کنید و نمونه ای ارسال نمایید بسیار متشکر میشم
بازم مرسی
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.