نمایش نتایج 1 تا 6 از 6

نام تاپیک: بستن کامل فرم و ایجاد فرم جدید

  1. #1

    بستن کامل فرم و ایجاد فرم جدید

    با سلام به تمامی دوستان و تبریک به مناسبت فرا رسیدن سال نو
    من برای فرا خوانی یک فرم جدید و بستن فرم موجود از دستور زیر استفاده میکنم

    private void btnList_Click(object sender, EventArgs e)
    {
    Thread mythread = new Thread(new ThreadStart(OpenNewForm));
    mythread.Start();
    this.Close();
    }
    public static void OpenNewForm()
    {
    Application.Run(new frmShow());
    }
    مشکل من اینه که در هر بار فراخوانی باید نام فرم مورد نظر برای بسته شدن رو درون OpenNewForm قرار بدم
    اگر بخوام اون رو بصورت یک متغیر تعریف کنم و هر بار با فراخوانی نام فرم و دستور
    Application.Run(new myform);
    رو فراخوانی کنم چطور ممکنه
    ممنون از تمامی دوستان

  2. #2
    کاربر تازه وارد آواتار god of war 313
    تاریخ عضویت
    دی 1400
    محل زندگی
    برزخ
    پست
    90

    نقل قول: بستن کامل فرم و ایجاد فرم جدید

    سلام.

    چرا از Show و ShowDialog استفاده نمی کنید؟


    myform.show();
    //or
    myform.showdialog();

  3. #3

    نقل قول: بستن کامل فرم و ایجاد فرم جدید

    ممنون دوست عزیز و همراهی هم دوستان
    ولی میتونم بپرسم باید دستوراتی رو که گفتی کجا استفاده کنم
    من دارم با ترد فرمم رو فراخوانی میکنم و فرم قبلی رو میبندم
    ممنون

  4. #4
    کاربر تازه وارد آواتار god of war 313
    تاریخ عضویت
    دی 1400
    محل زندگی
    برزخ
    پست
    90

    نقل قول: بستن کامل فرم و ایجاد فرم جدید

    نقل قول نوشته شده توسط MMRavari مشاهده تاپیک
    ممنون دوست عزیز و همراهی هم دوستان
    ولی میتونم بپرسم باید دستوراتی رو که گفتی کجا استفاده کنم
    من دارم با ترد فرمم رو فراخوانی میکنم و فرم قبلی رو میبندم
    ممنون
    سلام بر دوست گرامی.

    این دستورات کار خاصی انجام نمیدن.

    صرفا برای نمایش دادن هستن.

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


    مثال: فرض کنید شما یک فرم دارید. فرم شما فرم تنظیمات هست که name اش برابر هست با Setting .

    مرحله اول : اول باید از فرمی که میخوایین نمایش بدین یک نمونه بسازین.

    Setting st = new Setting();


    Setting نام فرم هست و st هم نمونه ساخته شده از فرم.

    مرحله دوم :
    حالا باید فرم رو نشون بدین.

    شما میتونید از دو متد Show() وShowDialog() و .برای نمایش استفاده کنید


    st.Show(); // با این متد فرم نمایش داده میشه و شما میتونید در فرم زیرین و یا در برنامه هنوز هم فعالیت کنید
    st.ShowDialog(); // با این متد فرم نمایش داده میشه و تا فرم رو نبندید قادر به فعالیت در فرم زیرین و یا در برنامه نیستید

    برای بستن فرم زیرین هم میتونید از متد زیر استفاده کنید.

    this.Close();

    توجه داشته باشید فرمی که بسته میشه اگر فرمی باشه که برنامه باهاش Load شده کل برنامه بسته میشه.

    مکان استفاده هم میتونه رویداد کلیک یک فرم true شدن یک شرط و ... باشه.

    امیدوارم برای شما مفید بوده باشه.(شرمنده دیر جواب دادم)

  5. #5

    نقل قول: بستن کامل فرم و ایجاد فرم جدید

    ممنون از پاسخ کامل تون
    اما دستور Close فرم رو از حافظه خارج نمیکنه
    من برای اینکه هر بار با باز بسته شدن فرم فضای حافظه کم نشه از دستورات تعیین شده استفاده می کنم
    تنها میخوام بدونم اگر بخوام این دستورات رو در یک کلاس تنها بنویسم و هر بار با فراخوانی اون کلاس
    فرم مورد نظر رو ارسال و از حافظه خارج کنم چطوری ممکنه
    ممنون از لطف شما
    و پیشاپیش سال نو مبارک

  6. #6
    کاربر تازه وارد آواتار god of war 313
    تاریخ عضویت
    دی 1400
    محل زندگی
    برزخ
    پست
    90

    نقل قول: بستن کامل فرم و ایجاد فرم جدید

    نقل قول نوشته شده توسط MMRavari مشاهده تاپیک
    ممنون از پاسخ کامل تون
    اما دستور Close فرم رو از حافظه خارج نمیکنه
    من برای اینکه هر بار با باز بسته شدن فرم فضای حافظه کم نشه از دستورات تعیین شده استفاده می کنم
    تنها میخوام بدونم اگر بخوام این دستورات رو در یک کلاس تنها بنویسم و هر بار با فراخوانی اون کلاس
    فرم مورد نظر رو ارسال و از حافظه خارج کنم چطوری ممکنه
    ممنون از لطف شما
    و پیشاپیش سال نو مبارک
    با سلام و تبریک سال نو.

    شما از کجا فهمیدید که از حافظه خارج نمیشه؟

تاپیک های مشابه

  1. پاسخ: 4
    آخرین پست: یک شنبه 26 مرداد 1399, 00:59 صبح
  2. پاسخ: 2
    آخرین پست: پنج شنبه 20 آذر 1393, 09:07 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •