PDA

View Full Version : کار روی فرم



Yasersadegh
چهارشنبه 17 بهمن 1386, 17:39 عصر
سلام خدمت دوستان عزیز
من در یک پروژه Windows Application یک فرم جدید( به جز فرم اول ) و دو کلاس جدید ایجاد کردم.
حال می خوام در یکی از کلاس ها با استفاده از یک متد روی فرمها یه کارایی کنم. ولی توی کلاس اجازه کار روی فرم ها رو نمی ده. :ناراحت:
چطوری می تونم اینکارو کنم. هر کس از دوستان می دونه ممنون می شم اگه در این زمینه به من کمک کنه.:خجالت:

با تشکر

raravaice
چهارشنبه 17 بهمن 1386, 18:08 عصر
در یکی از کلاس ها با استفاده از یک متد روی فرمها یه کارایی کنم.


چه کاری میخوای بکنی که لازمه از توی کلاس به فرم دسترسی داشته باشی؟
چون عموما کلاس رو مینویسن که تو فرم ازش استفاده کنن.

Yasersadegh
چهارشنبه 17 بهمن 1386, 20:57 عصر
مثلا کلاسم قراره معادله یک خط رو بدست بیاره.
توی این کلاس یه متد وظیفه محاسبه معادله خط رو داره و یه متد هم قراره خطی با معادله بدست آمده را روی فرم رسم کنه. این متد که قراره رسم کنه نمی تونه به فرم دسترسی داشته باشه.
چکار باید کنم.
ممنون از توجهتون

silentrise
چهارشنبه 17 بهمن 1386, 21:55 عصر
سلام
خوب تا اونجایی که من میدونم شما متدتون رو باید طوری بنویسید که وابسطه به هیچ چیز خارجی نباشه.. و از نظر شی گرا درست نیست !
یعنی هر کاری که با اون خط یا هر چی... رو با کانستراکتورت میگیری و در متدت محاسبه میکنی.
برای رسم نیز باید خروجی رو تو بگیری و ادامه کارت رو انجام بدی.
و اصلا مهم نیست در کدوم فرمت استفاده میکنی .فقط یوزش کن !
باسپاس

Yasersadegh
چهارشنبه 17 بهمن 1386, 22:42 عصر
یعنی هیچ راهی نداره که از توی متدهای کلاس بتونم روی فرم خط بکشم و یا هر کاری بکنم.

Yasersadegh
چهارشنبه 17 بهمن 1386, 23:21 عصر
یه نفر نمی خواد جواب منو بده.

sinpin
چهارشنبه 17 بهمن 1386, 23:43 عصر
چه کاری میخوای بکنی که لازمه از توی کلاس به فرم دسترسی داشته باشی؟
چون عموما کلاس رو مینویسن که تو فرم ازش استفاده کنن.
کی همچین چیزی گفته ؟!
ثانیا مگه خود فرم چیه ؟ یعنی چیزی غیر از کلاسه ؟!


یعنی هیچ راهی نداره که از توی متدهای کلاس بتونم روی فرم خط بکشم و یا هر کاری بکنم.
با این زبانهای برنامه نویسی مدرن تقریبا همیشه واسه هرکاری یه راهی هست. مشکل شما یک مورد خیلی ساده است که بنظر من به دلیل درک نامناسب از OOP ایجاد شده.

فرضا شما کلاسی دارید که میخواهید یک متن رو روی یک فرم چاپ کند : یک متود در اون کلاس میسازید که پارامتری از نوع فرم میگیره و چون یک فرم یک کلاس است و کلاسها Reference Type هستند با دستکاری پارامتر پاس شده آبجکت مورد نظرتون هم تغییر میکنه و نیاز به return کردن هم نیست.

شما بفرمایید که چه کاری میخواین روی فرمتون انجام بدید دوستان شما رو راهنمایی میکنند.

Yasersadegh
پنج شنبه 18 بهمن 1386, 09:03 صبح
دوست عزیز واقعا ممنونم از راهنماییتون.