یک ساب رویداد کلیک برای چندین دکمه

با سلام و سپاس خدمت کاربران عزیز سایت یاهو ۹۸ YAHOO

امروز درون سایت ها میچرخیدم که به سوال یکی از دوستان برخورد کردم گفتم شاید براتون جالب باشه

فرض کنید من اصلا با دیزاینر کاری ندارم و خودم با دستورات برنامه نویسی چندین دکمه ایجاد می کنم و الان میخوام اگر روی این دکمه ها کلیک شد واکنشی نشون داده بشه(مثلا نمایش یک msgbox). باید چگونه یک رویداد کلیک ایجاد کنم و بگم اگر آیدی دکمه این بود اینکار بشه و…(درست مثل itemclick در لیست ویو)

 

با استفاده از تگ و سندر به راحتی میشه

 

Button1.Initialize("Buttons")
Button1.Tag = 1
Button2.Initialize("Buttons")
Button2.Tag = 2
Button3.Initialize("Buttons")
Button3.Tag = 3
'
'
Sub Buttons_Click
    Dim btn As Button
    btn = Sender

    Select btn.Tag
    Case "1"
        ' code for Button1
    Case "2"
        ' code for Button2
    Case "3"
        ' code for Button3
    End Select
End Sub

 

اول دکمه هارا Initialize میکنیم و رویدادشونا مشترک میزاریم (Buttons) و توی رویداد کلیک از سلکت کیس استفاده میکنیم با برسی مقدار تگاشون

اگه تعداد دکمه هاهم زیاد بود میتونین از for برای مقدار دهی تگ استفاده کنید

 

Dim Button(40) as Button
--------------------------
for i = 0 to 39
Button(i).Initialize("Buttons")
Button(i).Tag = i
-------------------------
Sub Buttons_Click
Dim btn as Button = Sender

Select btn.Tag
Case 0

Case 1

Case n

موفق باشید

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