PDA

View Full Version : سوال: مفهوم دستور Set و کلمه New در دستور Dim



eftekhar93
پنج شنبه 18 شهریور 1389, 13:35 عصر
با سلام میخواستم دوتا سوال بپرسم
اول اینکه این دوستور با هم چه فرقی میکنند
dim a as new class
dim a as class
و دوم کار دستور set چیست؟

MEhdi Sobhani
پنج شنبه 18 شهریور 1389, 13:49 عصر
با سلام میخواستم دوتا سوال بپرسم
اول اینکه این دوستور با هم چه فرقی میکنند
dim a as new class
dim a as class
و دوم کار دستور set چیست؟
سلام
تو یه برنامه این دستورات رو بنویس و امتحان کن :



Dim NewForm As New Form1
NewForm.Show

و


Dim NewForm As Form1
NewForm.Show


با دستور New ، از یک کلاس یک شی جدید درست میشه که کاملا مستقله و واسه خودش کار میکنه ولی بدون اون نه و فقط یه قالب از اون نوع شی ساخته میشه که بعدا میشه با دستور SET اون قالب رو نسبت داد به یک شی دیگه .
مثلا کدهای قسمت دوم ارور میده چون NewForm به هیچ شی واقعی نسبت داده نشده .
اما اگر بعدش بنویسی



Set NewForm=Form1


NewForm کاملا میشه مثل خود Form1 و هر تغییری در اون بدی در فرم اصلی ایجاد میشه و هر تغییری در فرم اصلی در اون . در کل اگر شی گرایی رو بلد باشی خیلی سادس
(توضیحاتی که دادم در مورد قالب یه مقدار اشکال داره ، واسه فهم بهتر اینطوری گفتم )

یه مثال دیگه :




Private Sub Command1_Click()
Dim NewForm1 As Form1
Dim NewForm2 As Form1Set NewForm1 = Form1
Set NewForm2 = Form1
NewForm2.Left = 100
NewForm1.Top = 200
End Sub




اینجا هر کاری روی NewForm1 یا NewForm2 انجام بدی مثل اینه که رو Form1 انجام دادی .
موفق باشی .