.wysiwyg { BACKGROUND: #f5f5ff; FONT: 10pt tahoma,tahoma,tahoma; COLOR: #000000 } P { MARGIN: 0px } .inlineimg { VERTICAL-ALIGN: middle } سلام
حتما" بعضی از متد ها را دیدید که میتونید یک یا چند پارامتر به انها پاس کنید؟
یعنی اگر یک پارامتر به ان ارسال کنید برنامه کامپایل میشود و اگر هم دو یا بیشتر پارامتر به انها ارسال کنید باز هم برنامه کامپایل میشود.
پیش بار گذاری یا OverLoading این امکان را به شما میده که یک متد با لیست آرگومانهای متفاوت داشته باشین.
مثلا" ما یک تابع MessageBox داریم. حالا میخوایم این تابع به سه صورت فراخوانی بشه
1- فقط متن. 2- متن و عنوان 3- متن و عنوان و آیکون
برای این کار به این صورت عمل میکنیم:
کد:Public Sub Msg(ByVal Text As String) عملیات مربوط به حالت اول End Sub Public Sub Msg(ByVal TextAs String , ByVal Title As String) عملیات مربوط به حالت دوم End Sub Public Sub Msg(ByVal Text As String, ByVal Title As String, ByVal Icon As Integer) عملیات مربوط به حالت سوم End Sub
اگر به صورت بالا عمل کنیم یعنی متد ها را OverLoad کنیم به خواسته ی خود میرسیم.
فقط باید این نکته را بدانیم که زمانی متد ها با یکدیگر OverLoad میشوند که فقط و فقط آرگومانهای انها با هم تفاوت داشته باشد.
در ضمن این عمل را میتوان با اختیاری کردن پارامتر ها هم انجام داد به این صورت که قبل از کلمه ی ByVal از کلمه ی Optional استفاده کنیم که ان پارامتر را اختیاری میکند. ولی اگر تعداد پارامتر ها زیاد باشد این روش چندان مناسب نیست و باعث گمراه کردن کاربر نیز میشود![]()