PDA

View Full Version : آموزش: استفاده از Constructor یا Sub New



Behzad_MCP
دوشنبه 10 مرداد 1390, 16:18 عصر
البته که من این مطلبو به خاطر درخواست یکی از دوستان گذاشتم و شاید برای بعضی از اساتید سایت کسالت آور باشه ولی خوشحال میشم اگر کسی چیزی بهش اضافه کنه

خب قرار بود با یه مثال توضیح بدم
ما دو تا فرم داریم به نام های ّForm1 و Form2 و دو متغیر با نامهای n1 و n2 که n1 در Form1 و n2 در Form2 تعریف شده است . حالا ما میخواهیم مقدار n1 را پاس بدهیم به n2 .
پس تا اینجا کد ما به شکل زیر خواهد بود


Public

Class Form1


Private n1 As String = String.Empty
End

Class
Public

Class Form2


Private n2 As String = String.Empty
End

Class


حالا یک Constructor جدید برای فرم 2 مینویسیم و یک پارامتر ورودی در آن اضافه میکنیم و n2 را مقدار دهی میکنیم


Public

Class Form2


Private n2 As String = String.Empty


Sub New()


' This call is required by the Windows Form Designer.

InitializeComponent()


' Add any initialization after the InitializeComponent() call.


End Sub


Sub New(ByVal str As String)

InitializeComponent()

n2 = str


End Sub
End

Class


حال در Form1 برای مثال در رویداد کلیک یک دکمه Form2 را با constructor جدید فراخوانی میکنیم



Private Sub btnThrow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnThrow.Click


Dim frm2 As Form2

frm2 =
New Form2("Hello")

frm2.Show()


End Sub

تا اینجا ما تونستیم پارامترمونو پاس بدیم حالا برای اثبات حرفمون در Form2 یک Label دارم که Text اونو مقدار n2 قرار میدم :



Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


Me.Label1.Text = n2


End Sub


امیدوارم که مفید بوده باشه

omidquest
دوشنبه 10 مرداد 1390, 20:27 عصر
اقا بهزاد خيلي واسه ما زحمت كشيدن تا اين مطلب براي من جا افتاد

خداييش خيلي ساده و عالي توضيح داده

واسه همين تمام كد ها رو اوردم تو محيط vb.net2010

دانلود كنيد و دعاشو بجون بهزاد جان كنيد
يا علي