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

نام تاپیک: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

  1. #1

    Smile روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    با سلام

    غالبا اگر بخواهم فرمی رو close کنم و فرم بعدی رو فراخوانی کنم از این کد استفاده میکنم:


    this.Hide();
    Form2 f = new Form2();
    f.ShowDialog();
    this.Close();


    همیشه این کد منو به شک مینداخت که آیا فرم 1 بسته شد یا!!؟؟؟
    در حالی که همیشه معتقد بودم نه فرم 1 بسته نشده و فقط hide شده اما خودم را با کدهای اکثر دوستان قانع میکردم که این روش واقعا درسته!!!!!!!!!!!!!!!

    دیشب داشتم برنامه ای مینوشتم که یه پروسه زمان بری مشغول به کار بود. لازم بود فرم 1 در همان لحظه بسته بشه و فرم 2 اجرا بشه. وقتی دستور بالا رو نوشتم سرعت برنامه به طرز افتضاحی کاسته شد.!!!!!!!!!!

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

    این تکه کد دقیقا فرم 1 رو همون لحظه می بنده و فرم 2 مجددا اجرا میشه.


    private void button1_Click(object sender, EventArgs e)
    {
    System.Threading.Thread mythread = new System.Threading.Thread(new System.Threading.ThreadStart(OpenNewFrom));
    mythread.Start();
    this.Close();

    }
    public static void OpenNewFrom()
    {

    Application.Run(new Form2 ());//Create an instance of your new form. No need to call show method.
    }
    }


    منبع:
    http://www.dotnetspider.com/forum/23...plication.aspx

    خواستم نظر دوستای دیگم رو بدونم؟
    موفق باشید.
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 06 مرداد 1395 در 20:03 عصر

  2. #2
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر


    this.Hide();
    Form2 f = new Form2();
    f.ShowDialog();
    this.Close();

    این کد مشکلی نداره درسته ولی وقتی شما showdialog می کنید تا فرم بسه نشه خط بعدی اجرا نمیشه اگه این کد استفاده کنی این مشکلم حل میشه


    Form2 f = new Form2();
    f.Show();
    Close();


    استفاده از thread ممکنه تو cpu تک هسته ای سرعت پایین بیاره چون زمان کار cpu تقسیم میکنه به نظر من پایین اومدن سرعت اون کامپیوتر ممکنه از جایی دیگه ای باشه
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 06 مرداد 1395 در 20:01 عصر

  3. #3

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط mehrsa_fr مشاهده تاپیک

    this.Hide();
    Form2 f = new Form2();
    f.ShowDialog();
    this.Close();
    این کد مشکلی نداره درسته ولی وقتی شما showdialog می کنید تا فرم بسه نشه خط بعدی اجرا نمیشه اگه این کد استفاده کنی این مشکلم حل میشه


    Form2 f = new Form2();
    f.Show();
    Close();
    استفاده از thread ممکنه تو cpu تک هسته ای سرعت پایین بیاره چون زمان کار cpu تقسیم میکنه به نظر من پایین اومدن سرعت کامپیوتر ممکنه از جایی دیگه ای باشه
    دوست عزیز میدم showdialog نمیذاره خط بعدی اجرا بشه.

    اما شما تا بحال از کدی که نوشتید استفاده کردید؟
    میدونید فرم 2 هرگز show نخواهد شد!!!!!!!!! چون دستور close بقدری سریع اجرا میشه که تا فرم 2 اجرا بشه اون دستور اجرا میشه و برنامه کلا بسته میشه!!!!!!

    موفق باشی
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 06 مرداد 1395 در 20:02 عصر

  4. #4
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    مگه میشه استفاده نکرده باشم و بگم من تا حالا فقط از این روش استفاده میکردم برنامه ام بسته نمیشد
    کد ها به ترتیب اجرا میشن منم تا حالا همچین مشکلی باهاش نداشتم

  5. #5

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

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

    همین الان تست کن.
    یه پروژه درست کن هیچی توش نباشه جز 2 تا فرم. به این روشی که فرمودید عمل کنید.

    هرگز نمیزاره فرم 2 اجرا بشه!

  6. #6
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    این پروژه دانلود کنید و تست کنید رو دستگاه من که مشکلی نداشت
    فایل های ضمیمه فایل های ضمیمه

  7. #7

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط mehrsa_fr مشاهده تاپیک
    این پروژه دانلود کنید و تست کنید رو دستگاه من که مشکلی نداشت
    دوست عزیز در این روش شما همیشه یه فرم Main در حال اجرا دارید.

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

  8. #8
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    بله شما فرمی که main هستو هر وقت close کنید برنامه بسته میشه چه بعدش فرم باز کنید چه نکنید شما با کد بالا در حقیقت انگار یه برنامه دیگه با این کارتون باز کردید

  9. #9

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط mehrsa_fr مشاهده تاپیک
    بله شما فرمی که main هستو هر وقت close کنید برنامه بسته میشه چه بعدش فرم باز کنید چه نکنید شما با کد بالا در حقیقت انگار یه برنامه دیگه با این کارتون باز کردید
    شما روش دیگه ای برای بستن فرم main دارید؟

    من 10 فرم دارم و نیاز دارم بعضی وقت ها فقط یه فرم ام لود بشه.

    یا برنامه ای داریم اول فرم load اون اجرا میشه و بعد فرم login و بعد فرم main چه راه حلی پیشنهاد می کنید؟

    موفق باشید
    علی پاییزی

  10. #10
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط ali_autumnal مشاهده تاپیک
    شما روش دیگه ای برای بستن فرم main دارید؟

    من 10 فرم دارم و نیاز دارم بعضی وقت ها فقط یه فرم ام لود بشه.

    یا برنامه ای داریم اول فرم load اون اجرا میشه و بعد فرم login و بعد فرم main چه راه حلی پیشنهاد می کنید؟

    موفق باشید
    علی پاییزی
    ببینید شما برنامه رو میبندید و یه برنامه دیگه باز میکنید که این دفعه یه فرم دیگه برای شما نشون میده این کار اصلا اصولی نیست شما میتونید فرم اصلی hide کنید و هر وقت دوباره بهش احتیاج داشتید دوباره show کنید
    باز اگه بقیه دوستان هم اگه نظری دارند بگن شاید به نتیجه ای برسیم

  11. #11

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط mehrsa_fr مشاهده تاپیک
    ببینید شما برنامه رو میبندید و یه برنامه دیگه باز میکنید که این دفعه یه فرم دیگه برای شما نشون میده این کار اصلا اصولی نیست شما میتونید فرم اصلی hide کنید و هر وقت دوباره بهش احتیاج داشتید دوباره show کنید
    باز اگه بقیه دوستان هم اگه نظری دارند بگن شاید به نتیجه ای برسیم
    من نگفتم این روش عالیه و یا اصولی!!

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


    در ثانی وقتی من با فرم load یا login کاری ندارم جز اینکه فقط یکبار اجرا شدن برای چی اونها رو hide کنم که فضایی از حافظه رو اشغال کنند؟

    یا اگه بخوام فرم Main رو ببندم و دوباره باز کنم اما با تغییراتی که تو setting دادم اجرا بشه. اون موقع چی؟

  12. #12
    کاربر دائمی
    تاریخ عضویت
    مهر 1388
    محل زندگی
    iran
    پست
    311

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    دوست عزیز میدم showdialog نمیذاره خط بعدی اجرا بشه.

    اما شما تا بحال از کدی که نوشتید استفاده کردید؟
    میدونید فرم 2 هرگز show نخواهد شد!!!!!!!!! چون دستور close بقدری سریع اجرا میشه که تا فرم 2 اجرا بشه اون دستور اجرا میشه و برنامه کلا بسته میشه!!!!!!
    کد دوستمون درسته.
    فقط شما قبل از اینکه فرم رو close کنید hide می کردید و اصلا close اجرا نمی شده.

    موفق باشید.

  13. #13
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    اگه شما میخواید login کنید میتونید اول فرم main بگید showdialog بشه اگه colse بشه که بقیه کدای main اجرا میشن وگرنه که برنامه همین طور میمونه
    من برای سوال دومتون روش به خصوصی ندارم اگه بخوام اینکارو بکنم از applicatin.restart استفاده میکنم یا از همون روش شما که گفتید

  14. #14

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط manij_mhm مشاهده تاپیک
    کد دوستمون درسته.
    فقط شما قبل از اینکه فرم رو close کنید hide می کردید و اصلا close اجرا نمی شده.

    موفق باشید.
    خواهشن پست هارو دقیق بخونید بیایید پایین بعد پاسخ بدید.
    --------------------
    نقل قول نوشته شده توسط mehrsa_fr مشاهده تاپیک
    اگه شما میخواید login کنید میتونید اول فرم main بگید showdialog بشه اگه colse بشه که بقیه کدای main اجرا میشن وگرنه که برنامه همین طور میمونه
    من برای سوال دومتون روش به خصوصی ندارم اگه بخوام اینکارو بکنم از applicatin.restart استفاده میکنم یا از همون روش شما که گفتید
    من نمیخوام فرم main بی جهت لود بشه. ترتیب مهمه واسم. زیبایی برنامه ازبین میره.
    آخرین ویرایش به وسیله ali_autumnal : سه شنبه 30 شهریور 1389 در 01:01 صبح دلیل: این پست به دلیل تکراری بودن به طور خودکار ادغام شده است.

  15. #15
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    در هر صورت باید یه فرم یا باز باشه یا hide تا برنامه بسته نشه بعد میشه رفت سر بقیه چیز ها بحث کرد که مثلا قبل از showdialog کردن که تو خوده main فرمو hide کنی که ترتیب و زیبایی از بین نره

  16. #16

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط mehrsa_fr مشاهده تاپیک
    در هر صورت باید یه فرم یا باز باشه یا hide تا برنامه بسته نشه بعد میشه رفت سر بقیه چیز ها بحث کرد که مثلا قبل از showdialog کردن که تو خوده main فرمو hide کنی که ترتیب و زیبایی از بین نره
    یه برنامه داریم که فقط 2تا فرم داره. هر یک از فرم ها حکم فرم Main رو داره. پروسه ها و پردازش های سنگینی در هریک در حال اجراست. آیا جهت رفتن از فرم 1 به فرم 2 مجبور به استفاده کردن از روش hide هستیم؟ نمیشه close کنیم خلاص بشیم از دست اون؟

  17. #17
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    ببینید تو Program.cs یه خط کد هست که هر وقت برنامه شما باز شد اول اون فرم رو نشون میده
     Application.Run(newForm1());

    شما هر وقت این فرمو ببندید برنامه به طور کامل بسته میشه چه شما 2 تا فرم داشته باشید که بخواید برید فرم 2 و قبلی ببندید چه 100تا
    --------------------
    نقل قول نوشته شده توسط ali_autumnal مشاهده تاپیک
    یه برنامه داریم که فقط 2تا فرم داره. هر یک از فرم ها حکم فرم Main رو داره. پروسه ها و پردازش های سنگینی در هریک در حال اجراست. آیا جهت رفتن از فرم 1 به فرم 2 مجبور به استفاده کردن از روش hide هستیم؟ نمیشه close کنیم خلاص بشیم از دست اون؟
    تویه فرم یک یه thread بزار که این پردازش هارو انجام بده اگه رفت فرم 2 اون thread غیر فعال کن یا ببندش
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 06 مرداد 1395 در 19:57 عصر

  18. #18

    Smile نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    تویه فرم یک یه thread بزار که این پردازش هارو انجام بده اگه رفت فرم 2 اون thread غیر فعال کن یا ببندش
    لطفا بیشتر توضیح دهید. حتی الامکان با ذکر مثال.

  19. #19

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    با سلام.

    دوستانی که میگن hide کنید چرا hide کنیم؟؟؟؟ من نمی گم کد این دوستمون درسته ( ولی درسته ) ولی حداقل این خوبی رو داره که فرمی که دیگه بهش نیازی نداریم دیگه در کار نیست و حذف نمیشه و فضایی رو در بر نمی گیره. من این مثال رو چند هفته پیش تو سایت خودم زدم که به نظر من این روش از hide کردن بهتره

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


  20. #20
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط ali_autumnal مشاهده تاپیک
    لطفا بیشتر توضیح دهید. حتی الامکان با ذکر مثال.
    اینم یه مثال اگه جاییشو مشکل داشتی بپرس
    البته باید یکم با اصول thread اشنا باشید
    فایل های ضمیمه فایل های ضمیمه

  21. #21
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    29
    پست
    168

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط mmd2009 مشاهده تاپیک
    دوستانی که میگن hide کنید چرا hide کنیم؟؟؟؟
    والا من از اول این تاپتیک داشتم می گفتم چرا hide کنیم از اون روش اول استفاده نکنید دیگه نمیتونم تکرار کنم

  22. #22

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نظر دیگه ای پیشنهادی نیست؟

  23. #23

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

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

  24. #24

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    مهرسا : کد شما خرابه ، چون برنامه رو کلا میبنده

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

  25. #25
    کاربر دائمی آواتار b.saminjad
    تاریخ عضویت
    آذر 1390
    محل زندگی
    ایران
    پست
    230

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    سلام به همه دوستان


    مخفی کردن فرم اصلی دو اثر بد داره:
    اول بار اضافی بر رم(شاید در فرمهای ساده به نظر نرسه ولی در فرمهای بزرگ شاید حیاتی باشه واسه)
    دوم اگه فرم اصلی مخفی بشه با بستن فرم جاری برنامه از رم خارج نمیشه و باید حتما فرم اصلی بسته بشه

    راه حل من
    برای فرم لود از نخ استفاده بشه و برای فرم لاگین هم فرم اصلی رو مخفی کرده پس از اتمام کار فرم
    لاگین به برنامه (فرم اصلی)برگردیم و فرم لاگینو می بندیم

    مزایا :

    کنترل برنامه دست فرم اصلیه
    فرم اضافی در رم نداریم

    دوستان اینهایی که گفتم رو به صورت یک نمونه در برنامه زیر گذاشتم

    فایل های ضمیمه فایل های ضمیمه

  26. #26
    کاربر دائمی آواتار b.saminjad
    تاریخ عضویت
    آذر 1390
    محل زندگی
    ایران
    پست
    230

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    گاهی اوقات پیش میاد که نمیخایم با بستن فرم اصلی برنامه بسته نشه (منظور اولین فرمی است که نمایش داده نمیشه)
    رو پروژه راست کلیک کرده و properties را انتخاب کنبد سپس گزینه application را انتخاب
    کنبد در قسمت پایین اون گزینه shutdown mode را برروی when last form closed قرار دهید
    چون بنده این تاپیک (ترفندهای......) رو در تالار vb.net هم ایجاد کردم نوشته هارو کپی کردم و این نکته بالا فقط مربوط به vb.net است اگه باعث گمراهی شما شد معذرت میخام

    برنامه ای که در همین تاپیک ضمیمه کردم رو دانلود کن نگاهی بهش بنداز فک کنم راه حل خوبی باشه

  27. #27

    Thumbs up نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط ali_autumnal مشاهده تاپیک
    با سلام

    غالبا اگر بخواهم فرمی رو close کنم و فرم بعدی رو فراخوانی کنم از این کد استفاده میکنم:


    this.Hide();
    Form2 f = new Form2();
    f.ShowDialog();
    this.Close();


    همیشه این کد منو به شک مینداخت که آیا فرم 1 بسته شد یا!!؟؟؟
    در حالی که همیشه معتقد بودم نه فرم 1 بسته نشده و فقط hide شده اما خودم را با کدهای اکثر دوستان قانع میکردم که این روش واقعا درسته!!!!!!!!!!!!!!!

    دیشب داشتم برنامه ای مینوشتم که یه پروسه زمان بری مشغول به کار بود. لازم بود فرم 1 در همان لحظه بسته بشه و فرم 2 اجرا بشه. وقتی دستور بالا رو نوشتم سرعت برنامه به طرز افتضاحی کاسته شد.!!!!!!!!!!

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

    این تکه کد دقیقا فرم 1 رو همون لحظه می بنده و فرم 2 مجددا اجرا میشه.


    private void button1_Click(object sender, EventArgs e)
    {
    System.Threading.Thread mythread = new System.Threading.Thread(new System.Threading.ThreadStart(OpenNewFrom));
    mythread.Start();
    this.Close();

    }
    public static void OpenNewFrom()
    {

    Application.Run(new Form2 ());//Create an instance of your new form. No need to call show method.
    }
    }


    منبع:
    http://www.dotnetspider.com/forum/23...plication.aspx

    خواستم نظر دوستای دیگم رو بدونم؟
    موفق باشید.




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

  28. #28

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    میشد تو فرم بعدی این کارو انجام داد
     Application.OpenForms["splash"].Close();

  29. #29

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    من این کد رو امتحان کردم اوکیه ، چون وقتی فرم های قبلی باز میشد . در build کردن دفعات بعدی خطا میداد ، که در کد های قبلی که تست کردم این مشکل بود مخصوصا وقتی hide میکنی ولی این کد اوکی هست برای سوییچ کردن بین کد ها

    System.Threading.Thread mythread = new System.Threading.Thread(new System.Threading.ThreadStart(OpenMain));
    mythread.Start();
    this.Close();

    public static void OpenMain()
    {


    Application.Run(new mainFrm());//Create an instance of your new form. No need to call show method.
    }

  30. #30

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    سلام دوستان
    البته من روش بهتری دارم که نه نیازی به Hide کردن داره و نه بخواد نخ بزنی.

    شما اول بیاید فرم اصلی رو مین کنید.( Application.Run(new formmain());)

    حالا توی لود formmain این کد رو بزنید تا فقط یکبار با حلقه for اجرا بشه


    for(int i = 1; i < 2; i++)
    {
    this.Hide();
    new loginform().ShowDialog();
    }
    this.Show();


    خب حالا تو فرم لاگین توی اون قسمت از شرط که نام کاربری و رمز عبور درست بود نتیجه رو بزنید: this.Close();

    با این کار فرم لاگین بسته میشه و فرم مین از حالت Hide بیرون میاد.

  31. #31

    نقل قول: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    نقل قول نوشته شده توسط barnamenevispro مشاهده تاپیک
    سلام دوستان
    البته من روش بهتری دارم که نه نیازی به Hide کردن داره و نه بخواد نخ بزنی.

    شما اول بیاید فرم اصلی رو مین کنید.( Application.Run(new formmain());)

    حالا توی لود formmain این کد رو بزنید تا فقط یکبار با حلقه for اجرا بشه


    for(int i = 1; i < 2; i++)
    {
    this.Hide();
    new loginform().ShowDialog();
    }
    this.Show();


    خب حالا تو فرم لاگین توی اون قسمت از شرط که نام کاربری و رمز عبور درست بود نتیجه رو بزنید: this.Close();

    با این کار فرم لاگین بسته میشه و فرم مین از حالت Hide بیرون میاد.

    اگه طرف بدون اینکه یوزر و پسورد رو وارد کنه فرم لاگین رو ببنده که همینجوری فرم اصلی نمایش داده میشه و بهش خوشامد میگی
    و اینکه اصلا نقش اون حلقه for چیه؟


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

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