PDA

View Full Version : سوال: یک راهنمایی برای دکمه بستن



esmael_g
پنج شنبه 07 مرداد 1395, 01:35 صبح
سلام دوستان یه سوال دارم این سوالاتم شاید ساده باشن اما جدا برام کاربردی هستن ببینید تو یه دکمه رویداد کلیک رو جوری معرفی می کنم که به یه صفحه دیگه بره اما جوری تعریف کنم به صفحه جدید که رفت صفحه قبلی بسته بشه اتومات اینکه به صفحه جدید بره که سادس اما اینکه چجوری تعریفش کنم که بعد از رفتن به صفحه جدید صفحه قدیم بسته بشه مهمه که بلد نیستم در حالت عادی از دستور close();استفاده میشه اما اینو قبول نمی کنه نمی دونم چیکار کنم ممنون میشم کمک کنید.

kamiloted
پنج شنبه 07 مرداد 1395, 01:46 صبح
سلام دوستان یه سوال دارم این سوالاتم شاید ساده باشن اما جدا برام کاربردی هستن ببینید تو یه دکمه رویداد کلیک رو جوری معرفی می کنم که به یه صفحه دیگه بره اما جوری تعریف کنم به صفحه جدید که رفت صفحه قبلی بسته بشه اتومات اینکه به صفحه جدید بره که سادس اما اینکه چجوری تعریفش کنم که بعد از رفتن به صفحه جدید صفحه قدیم بسته بشه مهمه که بلد نیستم در حالت عادی از دستور close();استفاده میشه اما اینو قبول نمی کنه نمی دونم چیکار کنم ممنون میشم کمک کنید.



this.close();

esmael_g
پنج شنبه 07 مرداد 1395, 08:18 صبح
نه سوالم رو متوجه نشدید این کد رو قبول نمی کنه ببینید کد من اینه
dowom dowom = new dowom();
dowom.ShowDialog();


که میاد منو به فرم دوم وصل میکنه با زدن دکمه اما می خوام بهش کدی اضافه کنم که بعد از زدن دکمه و باز شدن فرم دوم فروم اول که الان داخلشم بسته بشه

mrprestige
پنج شنبه 07 مرداد 1395, 08:37 صبح
سلام دوست من وقتت بخیر .

barnamenevis.org/Form
(http://barnamenevis.org/showthread.php?527100-%D8%A8%D8%B3%D8%AA%D9%86-%D9%81%D8%B1%D9%85-%D8%A8%D8%A7%D8%B2-%D8%B4%D8%AF%D9%87-%D8%A8%D8%AF%D9%88%D9%86-%D8%A7%DB%8C%D9%86%DA%A9%D9%87-%DA%A9%D9%84-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%A8%D8%B3%D8%AA%D9%87-%D8%A8%D8%B4%D9%87&p=2331116&viewfull=1#post2331116)

esmael_g
پنج شنبه 07 مرداد 1395, 08:43 صبح
سلام مجدد حل شد اینم راهی که استفاده کردم
aval aval = new aval();
aval.Show();

this.Hide();

چون از showdialogاستفاده می کردم اجازه نمی داد اون صفحه بسته بشه الان اون مشکل باقی نمونده البته اگه بجایی this.hideبه نظرم از this.closeاستفاده کنم بهتر فکر می کنم اگه تو برنامه از hideاستفاده بشه چون عملا اون صفحه تنها مخفی میشه فک کنم باعث هنگی سیستم بشه اگه اشتباه می کنم بگید یا همین کد کافیه؟

mrprestige
پنج شنبه 07 مرداد 1395, 09:06 صبح
دوست من استفاده از Hide اصولی نیست شما در ادامه اون کدی که در ادامه که در پست قبلی برات گذاشتم توی رویداد Form_Load مربوط به فرم اصلی اینو بنویسی


aval a = new aval();
a.Show();
this.Dispose();

پیروز موفق باشی

esmael_g
پنج شنبه 07 مرداد 1395, 09:12 صبح
خیلی ممنون ازتون یه سوال دارم صرفا جهت اطلاع خودم البته کد بالا خوب صد در صد طبق چیزی که من خواستم کاربردشم معلوم صفحه رو میبنده اما فرق بین this.Dispose(); و closeدر چی هست بهتر بگم خودم برام سواله فرقشون چیه این دو تا اینکه از hideاستفاده نکنم کاملا روشن شد برام اما ( چون تا الان با کد که شما قرار دادید روبرو نشدم می پرسم)

mrprestige
پنج شنبه 07 مرداد 1395, 09:47 صبح
خواهش میکنم دوست من .
ببین دوست من ، اگه بخوام خیلی خلاصه بگم Dispose میاد منابعی که در دسترس هست رو آزاد میکنه حالا ممکنه سوال برات پیش بیاد اون منابع چی هستن ، برای مثال منظور همین کنترل هایی ما روی صفحه فرم میزاریم شما فکر کنید ما برنامه ای داریم که به طور موقت میخوایم از یک کنترل استفاده کنیم بعد انجام کارمون اون کنترل رو دیگه نیاز نداریم و نمیخوایم روی فرم باشه تا حافظه رم رو اشغال کنه با Dispose کردن این منبع ( که منظور همون کنترل هست ) رو آزاد میکنیم در واقع میشه گفت Dispose پاک کردن کامل object از حافظه تون هست .راستی یادت هم باشه Close فقط برای Form بکار میره . حالا باز اگه متوجه نشدی بگو تا بیشتر توضیح بدم

daniyaltjm
پنج شنبه 07 مرداد 1395, 11:33 صبح
دوست من استفاده از Hide اصولی نیست شما در ادامه اون کدی که در ادامه که در پست قبلی برات گذاشتم توی رویداد Form_Load مربوط به فرم اصلی اینو بنویسی


aval a = new aval();
a.Show();
this.Dispose();

پیروز موفق باشی

درود یه نکته وقتی از متد ()show استفاده می کنم هر دو پنجره بسته میشن ولی وقتی از ()showDialog استفاده می کنم فقط فرم اول