نمایش نتایج 1 تا 3 از 3

نام تاپیک: استفاده از AddressOf در AddHandler با پارامتر

  1. #1
    کاربر جدید
    تاریخ عضویت
    شهریور 1386
    پست
    10

    Question استفاده از AddressOf در AddHandler با پارامتر

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



    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Dim tt As New Timer


    AddHandler tt.Tick, AddressOf timer_tick(پارامتر مورد نظرم)
    tt.Interval = 1000
    tt.Enabled = True




    End Sub


    Sub timer_tick(ورودی که میخوام)




    End Sub




    اینکار الان خطا میده، راه درستش چیه، اگه میشه با درست همین رو بگین که متوجه بشم !!!!

    ممنون از همه

  2. #2
    کاربر دائمی
    تاریخ عضویت
    تیر 1391
    پست
    1,022

    نقل قول: استفاده از AddressOf در AddHandler با پارامتر

    نقل قول نوشته شده توسط daniyal_13 مشاهده تاپیک
    سلام میخواستم بدونم چه جوری میتونم این کار رو بکنم



    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Dim tt As New Timer


    AddHandler tt.Tick, AddressOf timer_tick(پارامتر مورد نظرم)
    tt.Interval = 1000
    tt.Enabled = True




    End Sub


    Sub timer_tick(ورودی که میخوام)




    End Sub




    اینکار الان خطا میده، راه درستش چیه، اگه میشه با درست همین رو بگین که متوجه بشم !!!!

    ممنون از همه
    زمانی که شما روی Button2 کلیک می کنید هنوز رخداد Tick ای صورت نگرفته، برای همین بی معنیه که همون موقع بخواهیم به timer_tick پارامتری ارسال کنیم. از طرف دیگه رخداد Tick پارامتر هاش بصورت (sender As Object, e As EventArgs) ئه و
    نمی توانید به حالتی مثل timer_tick(my_parameter) فراخوانیش کنید.
    کاری که معمولا انجام میشه اینه :

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Dim tt As New Timer
    AddHandler tt.Tick, AddressOf timer_tick
    tt.Interval = 1000
    tt.Enabled = True
    End Sub

    Private Sub timer_tick(sender As Object, e As EventArgs)

    End Sub


    و چون شما میخواهید timer_tick بتونه از مقداری استفاده کنه، می توانید با tt.Tag بهش مقداری بدید :

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Dim tt As New Timer
    tt.Tag = "پارامتر مورد نظر شما"
    AddHandler tt.Tick, AddressOf timer_tick
    tt.Interval = 1000
    tt.Enabled = True
    End Sub

    Private Sub timer_tick(sender As Object, e As EventArgs)
    Dim your_parameter = CType(sender, Timer).Tag
    End Sub


    پارامتری که داخل tt.Tag قرار میدید میتونه از هر نوعی باشه، حتی میتونه آرایه ای باشه تا چند پارامتر رو بهش ارسال کنید :

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Dim tt As New Timer
    tt.Tag = {"بابک", Color.Yellow, 18}
    AddHandler tt.Tick, AddressOf timer_tick
    tt.Interval = 1000
    tt.Enabled = True
    End Sub

    Private Sub timer_tick(sender As Object, e As EventArgs)
    Dim your_parameter = CType(sender, Timer).Tag
    Dim name = your_parameter(0)
    Dim color = your_parameter(1)
    Dim age = your_parameter(2)
    Button2.Text = name + " - " + CStr(age)
    Button2.BackColor = color
    End Sub

  3. #3
    کاربر جدید
    تاریخ عضویت
    شهریور 1386
    پست
    10

    نقل قول: استفاده از AddressOf در AddHandler با پارامتر

    خیلی خوب توضیح دادین کاملا متوجه شدم، بسیار ممنون

تاپیک های مشابه

  1. سوال: کاربرد AddHandler و AddressOf و این کد
    نوشته شده توسط ahmadreza517 در بخش VB.NET
    پاسخ: 5
    آخرین پست: جمعه 16 دی 1390, 22:05 عصر
  2. سوال: چگونگی استفاده از دستور AddressOf
    نوشته شده توسط IranVB در بخش برنامه نویسی در 6 VB
    پاسخ: 10
    آخرین پست: جمعه 22 بهمن 1389, 11:21 صبح
  3. سوال درباره addhandler و addressof
    نوشته شده توسط mehdi_522 در بخش VB.NET
    پاسخ: 2
    آخرین پست: شنبه 30 آذر 1387, 08:55 صبح
  4. سوال: کار تابع addressof
    نوشته شده توسط drwatson در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: جمعه 04 مرداد 1387, 21:18 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •