PDA

View Full Version : سوال: کار با چند فرم



rahimi-s
دوشنبه 14 مرداد 1392, 04:56 صبح
با سلام، چرا در یک فرم نمی توان به مقادیر کنترل های فرم دیگر دسترسی داشت؟
یعنی در صورت ساخت یک شیء از یک فرم در فرمی دیگر، از متغیرها و توابع آن فرم نمی توان استفاده کرد.
مثلا برای انتقال محتوای کنترل textbox2 از فرم2 به textbox1 از فرم1 درصورت نوشتن کد زیر با خطا مواجه می شویم.

Dim OForm2 As Form2
OForm2 = New Form2

Me.Textbox1.text = OForm2.TextBox2.Text

neverlieme
دوشنبه 14 مرداد 1392, 05:51 صبح
چرا کار اضافه میکنی؟
form2 کلاس نیست که تو میخوای ازش آبجکت بگیری. خودش آبجکته
باید اینطوری عمل کنی
textbox1.text = form2.textbox2.text

Mani_rf
دوشنبه 14 مرداد 1392, 10:38 صبح
با سلام، چرا در یک فرم نمی توان به مقادیر کنترل های فرم دیگر دسترسی داشت؟
یعنی در صورت ساخت یک شیء از یک فرم در فرمی دیگر، از متغیرها و توابع آن فرم نمی توان استفاده کرد.
مثلا برای انتقال محتوای کنترل textbox2 از فرم2 به textbox1 از فرم1 درصورت نوشتن کد زیر با خطا مواجه می شویم.

میشه مشکلی نداره. البته اگر که فرم دوم در حال نمایش باشه اگر نباشه خطا میده


چرا کار اضافه میکنی؟
form2 کلاس نیست که تو میخوای ازش آبجکت بگیری. خودش آبجکته
باید اینطوری عمل کنی
textbox1.text = form2.textbox2.text

البته فقط تو VB.net اینطوریه. تو #C حتما باید New بگیری

ali.rk
دوشنبه 14 مرداد 1392, 13:36 عصر
میشه مشکلی نداره. البته اگر که فرم دوم در حال نمایش باشه اگر نباشه خطا میده

خب بسته باشه چه گلی به سر بمالیم

neverlieme
دوشنبه 14 مرداد 1392, 14:30 عصر
میشه مشکلی نداره. البته اگر که فرم دوم در حال نمایش باشه اگر نباشه خطا میده



البته فقط تو VB.net اینطوریه. تو #C حتما باید New بگیری


نه نیازی نیست که فرم دوم show بشه
همون کدی که نوشتم کار میکنه. اگه نتونستی بگو پیوست کنم

Mani_rf
سه شنبه 15 مرداد 1392, 09:49 صبح
نه نیازی نیست که فرم دوم show بشه
همون کدی که نوشتم کار میکنه. اگه نتونستی بگو پیوست کنم

منظورم Show نبود. فرم باید Load شده باشه ؛ بعید میدونم اگه لود نشده باشه ایراد نگیره. احتمالا Object reference... میده

neverlieme
سه شنبه 15 مرداد 1392, 17:55 عصر
مگه با vb.net کار نمیکنی؟
تو، تو پروژت 2 تا فرم ایجاد کن، تکست باکس هاتو قرار بده و به این شکل که کد رو گذاشتم کد رو به پروژه اضافه کن. F5 رو بزن تا پروژه اجرا شه
هیچ مشکلی نداره خودم امتحان کردم