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

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

  1. #1

    Question بستن فرم اول پس از باز شدن فرم دوم

    سلام خسته نباشيد
    دو تا فرم دارم كه داخل فرم شماره 1 يك button گذاشتم كه با استفاده از كد زير، فرم شماره 2 رو نشون ميده.
                Form a = new Form2();
    a.Show();


    اما ميخوام وقتي فرم شماره 2 نمايش داده مي‌شود، فرم شماره 1 بسته شود ولي با نوشتن اين كد به محض نمايش فرم 2 هر دو فرم بسته مي‌شود.

                Form a = new Form2();
    a.Show();
    this.Close();


    يكي از دوستان گفت كه ميتونم فرم 1 رو مخفي كنم اما با اين كار وقتي فرم شماره 2 رو ميبندم هنوز برنامه بسته نشده و اين اشكال برنامه مي‌باشد.

    دوستان كمك كنيد چجوري فرم اول بسته شود و فرم دوم نمايش داده شود.

  2. #2
    کاربر تازه وارد آواتار mohammad_cmd
    تاریخ عضویت
    تیر 1390
    محل زندگی
    مشهد
    پست
    47

    نقل قول: فرم

    شما باید در form2_load این کد را بنویسید
    form1.close();

  3. #3

    نقل قول: فرم

    داخل لود فرم 2 اصلا متودي در رابطه با close فرم 1 وجود نداره.

  4. #4

    نقل قول: فرم

    نقل قول نوشته شده توسط MS.Worm مشاهده تاپیک
    داخل لود فرم 2 اصلا متودي در رابطه با close فرم 1 وجود نداره.
    به این شکل باید باشه:

    Form3 frm = newForm3();
    this.Close();
    frm.Show();

  5. #5
    کاربر دائمی آواتار Farshid007
    تاریخ عضویت
    بهمن 1389
    محل زندگی
    Karaj
    پست
    1,249

    نقل قول: فرم

    نقل قول نوشته شده توسط ma.rad مشاهده تاپیک
    به این شکل باید باشه:

    Form3 frm = newForm3();
    this.Close();
    frm.Show();
    اینجوری جفت فرم ها بسته میشن!!!
                Form2 frm = new Form2();
    this.Hide();
    frm.Show();

    اینجوری درست تره

  6. #6
    مدیر بخش آواتار mmd2009
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    پست
    2,393

    نقل قول: فرم

    با سلام خدمت دوست عزیز

    يكي از دوستان گفت كه ميتونم فرم 1 رو مخفي كنم اما با اين كار وقتي فرم شماره 2 رو ميبندم هنوز برنامه بسته نشده و اين اشكال برنامه مي‌باشد.
    با توجه به این مطلب اگر قرار باشه این کارو بکنیم...

    به شکل زیر عمل کنید

            private void button1_Click(object sender, EventArgs e)
    {
    // ریسمانی برای باز کردن فرم شماره دو
    Thread Form2 = new Thread(delegate() { RunForm2(new Form2()); });
    Form2.Start();
    this.Close();
    }
    /// <summary>
    /// متدی برای باز کردن فرم شماره دو
    /// </summary>
    /// <param name="newForm2"></param>
    private void RunForm2(Form2 newForm2)
    {
    Application.Run(newForm2);
    }



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

    موفق باشید

    کسی که به خود اطمینان دارد به تعریف دیگران احتیاج ندارد. «گوستاو لوبون»


  7. #7

    نقل قول: فرم

    نقل قول نوشته شده توسط Farshid007 مشاهده تاپیک
    اینجوری جفت فرم ها بسته میشن!!!
     Form2 frm = new Form2();
    this.Hide();
    frm.Show();

    اینجوری درست تره
    نه دوست عزیز بسته نمی شن تست کنید

  8. #8
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    شیراز
    پست
    59

    نقل قول: بستن فرم اول پس از باز شدن فرم دوم

    سلام شما از این کد هم میتونید استفاده کنید
     private void button1_Click(object sender, EventArgs e)
    {

    Form1 frm = new Form1();
    this.Visible = true;
    frm.FormClosed += new FormClosedEventHandler(frm_FormClosed);
    frm.Show();

    }

    void frm_FormClosed(object sender, FormClosedEventArgs e)
    {
    this.Visible = true;
    }

    دقت کنید که در هنگام تایپ FormClosed برنامه به شما اعلان می کند با فشردن tab بقیه کد به طور اتوماتیک اضافه میشو د ودر انتهای خط با فشردن tab تابع void frm_FormClosed . بقیه کدها رو هم دقیقا مثل بالا تایپ کن
    موفق باشی

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

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