PDA

View Full Version : توضیح در مورد AddHandlerو کاربرد آن در vb.NET



sh
جمعه 28 شهریور 1382, 11:14 صبح
با سلام خدمت دوستان عزیز

می خواستم توضیح کاملی درباره AddHandler و کاربرد آن در ویژوال بیسیک و کلمه AddressOf بدهید

با تشکر
شهریار

Abbas Arizi
جمعه 28 شهریور 1382, 12:06 عصر
در مورد Addressof همون طور که تقریبا از اسمش هم مشخصه به آدرس یک تابع اشاره میکنه. آدرس یک تابع در مواقع مختلفی ممکنه مورد نیاز باشه. یکی از کاربردهای معمول آن در مورد توابع CallBack میباشد. چرا که به علت اینکه این توابع از طرف یک برنامه خارج از برنامه ما به عنوان یک کد Unmanaged فراخوانی میشوند نام تابع به تنهایی نمیتواند سبب اجرای تابع شود. ولی وقتی آدرس تابع را بدهیم تابع فراخوان میتواند از روی آدرس آن، آن را فراخوانی کند.
در VB.NET به علت ویژگیهای شیی گرایی که در این زبان هست و بحث delegate ها این عملگر جایگاه خاصی پیدا کرده. Delegate ها در حقیقت همان آدرس توابع یا یک اشاره گر به آنها هستند. در واقع Addresof در VB.NET یک Instance جدید از یک delegate ایجاد کرده و آن را به تابع فراخوان ارسال میکند.
کار دستور AddHandler در VB.NET هم اینه که یک تابع رو به عنوان اداره کننده رویدادی خاص در یک فرم معرفی میکنه. یعنی با استفاده از Addressof یک Delegate از تابع مربوطه رو به یک رویداد خاص نسبت میدیم.