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

نام تاپیک: ترتیب اجرای فرمها

  1. #1
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    ترتیب اجرای فرمها

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

  2. #2
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    سلام به همگی.
    من دو تا فرم دارم که یکی واسه صفحه اصلی هست و یکی واسه login کردن.
    اول فرم صفحه اصلی را ایجاد کردم و بعد فرم login.
    در فرم login صفحه ورود را فراخوانی می کنم ولی اول صفحه اصلی باز میشه.
    توی یه پروژه دیگم درسته ولی این یکی نه.
    چکار کنم که اول صفحه login باز بشه.
    مرسی
    https://barnamenevis.org/showth...t=88552&page=3

  3. #3
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    مرسی از کمکتون.
    ولی من از کد شما متوجه نشدم، چکار کردید که اول login باز شده.
    من کد صفحه login را نمیخوام، بلکه میخوام بدونم چکار کنم که اول فرم login بازبشه.
    توی یکی دیگه از برنامه هام اول از همه صفحه login باز میشه، ولی توی این یکی نه.
    میخوام بدونم چون اول فرم اصلی را ایجاد کردم و بعد فرم login ، اینطوری میشه؟ یا ربطی به ترتیب ایجاد نداره؟

  4. #4
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    مرسی از کمکتون.
    ولی من از کد شما متوجه نشدم، چکار کردید که اول login باز شده.
    من کد صفحه login را نمیخوام، بلکه میخوام بدونم چکار کنم که اول فرم login بازبشه.
    توی یکی دیگه از برنامه هام اول از همه صفحه login باز میشه، ولی توی این یکی نه.
    میخوام بدونم چون اول فرم اصلی را ایجاد کردم و بعد فرم login ، اینطوری میشه؟ یا ربطی به ترتیب ایجاد نداره؟
    در اون برنامه‌تان که فرم لگین اول باز میشه، وقتی که فرم لگینتان را میبندید برنامه‌تان بسته نمیشه؟

    اگر که نه، برنامه‌تان را بفرستید یک نگاه بندازم.
    در ضمن جواب اینکه چطوری فرم لگین اول نشان داده میشه را در فایل Program.cs میتوانید ببینید.

  5. #5
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    Smile نقل قول: ترتیب اجرای فرمها

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

  6. #6
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    توی فرم های logon و فرم اصلی شما باید فرم دوم را فرم logon در نظر بگیرید و فرم اول را به عنوان فرم اصلی برنامه .
    به خاطر این که بعد از اینکه شما فرم logon را رد میکنید باید این فرم کامل از حافظه خارج بشه .
    در غیر این صورت فرم logon فقط hide میشه و از حافظه خارج نمی شه .

    به همین دلیل هست که فرم logon را به عنوان فرم دوم در نظر میگیرن .

    اما اگه برعکس عمل کنید فرم logon که بسته بشه برنامه خاتمه خواهد یافت . و فرم اصلی برنامه اجرا نخواهد شد .

    برای اینکه فرم دوم اول بالا بیاد باید این قسمت را Form2 در نظر بگیری .
    Application.Run(new Form1());


    موفق باشی .

  7. #7
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    آره درست می گید، وقتی فرم login را می بندم، فرم اصلی هم بسته میشه.
    خوب من منظورتون را نفهمیدم که می گید فرم login را دوم تعریف کنم، اون یکی را اول تعریف کنم.
    یعنی چی؟
    من الان مشکلم برای باز کردن login به عنوان فرم اول حل شد.
    الان نمی دونم راه حل اینکه شما می گید، چیه؟

  8. #8
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    دلیل اینکه چرا فرم دوم را فرم logon انتخاب میکن را گفتم . چون فرم بعد از بسته شدن کامل از حافظه خارج بشه .

  9. #9
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط mahdi_7610 مشاهده تاپیک
    دلیل اینکه چرا فرم دوم را فرم logon انتخاب میکن را گفتم . چون فرم بعد از بسته شدن کامل از حافظه خارج بشه .
    نه دلیلشو نمیخوام.
    میگم یعنی چی login را فرم دوم بگیرم؟
    یعنی اسمش را بذارم form 2؟ آخه اسمش که مهم نیست.
    متوجه نمیشششششششششم.

  10. #10
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    نه دلیلشو نمیخوام.
    میگم یعنی چی login را فرم دوم بگیرم؟
    یعنی اسمش را بذارم form 2؟ آخه اسمش که مهم نیست.
    متوجه نمیشششششششششم.
    من چیز جدیدی نگفتم . همون که مشکلتون حل شده کافیه
    ببینید شما 2 فرم دارید . یکی فرم logon هست و یکی دیگه فرم اصلی برنامه

    خب فرم logon بعد از عبور باید بسته بشه و برنامه اصلی اجرا بشه . خب باید form2 را logon بگیرید و برنامه اصلی را form1
    برای اینکه form2 یا همون logon ابتدا بالا بیاد باید توی قسمت زیر Form1 را به Form2 تغییر بدی .
    Application.Run(new Form1());

  11. #11
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    خب فرم logon بعد از عبور باید بسته بشه و برنامه اصلی اجرا بشه . خب باید form2 را logon بگیرید و برنامه اصلی را form1
    برای اینکه form2 یا همون logon ابتدا بالا بیاد باید توی قسمت زیر Form1 را به Form2 تغییر بدی .
    Application.Run(new Form1());
    منم تمام این کارا رو که می گید،انجام دادم،ولی همون طور که گفتید، وقتی login را می بندم، فرم اصلی هم، همراش بسته میشه.
    باید چکار کنم که فرم اصلی بسته نشه؟!

  12. #12
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    منم تمام این کارا رو که می گید،انجام دادم،ولی همون طور که گفتید، وقتی login را می بندم، فرم اصلی هم، همراش بسته میشه.
    باید چکار کنم که فرم اصلی بسته نشه؟!
    توی Form_Load فرم اول کد زیر را وارد کن

     Form2 frm = new Form2();
    frm.ShowDialog();


    توی حالت زیر هم همون Form1 را قرار بده
    Application.Run(new Form1());

  13. #13
    VIP آواتار Amir Oveisi
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    هر جا که حال کنم - فعلا یزد
    پست
    2,604

    نقل قول: ترتیب اجرای فرمها

    ببینید چیزی به اسم فرم اول یا دوم نداریم!
    یک مفهوم به اسم فرم اصلی برنامه داریم که به فرمی گفته میشه که در کلاس Program داخل متد Main اجرا می شود. به این صورت :

    class Program
    {
    Main(...)
    {
    ...
    Application.Run(new Form1());
    ...
    }
    }


    در این کد Form1 به عنوان فرم اصلی برنامه در نظر گرفته میشه و هر موقع این فرو بسته بشه (close منظورمه نه hide) کل برنامه شما نیز بسته خواهد شد.

    حالا در مورد مشکل شما، قطعا چون فرم login شما به عنوان فرم اصلی برنامه هست، با ابسته شدن اون برنامه هم بسته میشه.
    راه حل اینه که فرم اصلی برنامه رو تغییر بدید (از همون متد Main). مثلا اگر میخواهید بعد از فرم login، فرم x نشون داده بشه، فرم x رو به عنوان فرم اصلی در نظر بگیرید. با این کار در صورت بسته شدن فرم login برنامه شما بسته نمیشه. اما یک مسئله ای که با این کار بوجود میاد اینه که موقع اجرای برنامه اول فرم x نشون داده میشه و خبری از فرم login نخواهد بود! برای رفع این مسئله باید در رویداد Load فرم x ، فرم x را hide کرده و فرم login را show کنید. (بهتره ShowDialog کنید).

    به این کد ها نگاه کنید:
    private FormX_Load(...(
    {
    this.Hide();
    LoginForm login = new LoginForm();
    if(login.ShowDialog() == DialogResult.Ok)
    {
    this.Show();
    }
    else
    //یعنی اطلاعات login اشتباه بوده و هر کاری خواستین میتونین اینجا انجام بدین
    }


    در فرم Login هر جایی که اطلاعات ورودی کاربر درست بودند این کار رو بکنید:
    this.DialogResult = DialogResult.Ok;


    با این کار مشکل شما حل خواهد شد. در کل منطق ساده ای داره، اگر سوالی بود مطرح کنید تا پاسخ داده بشه.

    موفق باشید

  14. #14
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    سلام.
    مرسی از پاسخ کاملتون، آقای برمودا !
    فقط من به مشکل برخوردم.
    1. وقتی USER و PASS را اشتباه وارد می کنم؛ اول پیغام "bye bye " میده، بعد پیغام "invalid user & pass" میده و بعدشم فرم اصلی باز میشه.
    2. اگر user و pass را درست وارد کنم؛ یکبار دیگه صفحه login باز میشه و بعد از login کردن مجدد، این پیغام خطا را میده.(پیغام خطا را ضمیمه کردم).

    من کد صفحه login را به این صورت نوشتم.

    privatevoid button1_Click(object sender, EventArgs e)
    {
    if (textBox1.Text.Trim() == "admin" && textBox2.Text.Trim() == "1234")
    {
    this.DialogResult = DialogResult.OK;
    }
    else
    {
    MessageBox.Show("ByeBye!");
    this.DialogResult = DialogResult.Abort;
    }
    }


    البته این خط را

    MessageBox.Show("ByeBye!");
    this.DialogResult = DialogResult.Abort;
    توی یک برنامه دیگه توی همین سایت دیده بودم و نمی دونم درست استفاده کردم یا نه؟!
    برای else در صفحه اصلی هم اینو گذاشتم

    privatevoid Form1_Load(object sender, EventArgs e)
    {
    this.Hide();
    Form2 f2 = newForm2();
    if (f2.ShowDialog() == DialogResult.OK)
    {
    this.ShowDialog();
    }
    else
    MessageBox.Show("Invalid username & password");
    }

    حالا اشکال کار من کجاست؟!
    مرسی
    عکس های ضمیمه عکس های ضمیمه

  15. #15
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    خب اونی که من توی پست #12 گفتم با اینی که دوستمون برمودا گفتن چه فرقی میکنه ؟

    اینطوری عمل کن .

    توی فرم logon این کدها را قرار بده .

    private void button1_Click(object sender, EventArgs e)
    {
    if (txtBox1.Text.Trim() == "admin" && txtBox2.Text.Trim() == "1234")
    {
    this.Close();
    }
    else if (txtBox1.Text.Trim() == "" && txtBox2.Text.Trim() == "")
    {
    MessageBox.Show("یوزرنیم و پسوورد را وارد کنید", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
    else
    {
    MessageBox.Show("رمز وارد شده اشتباه است", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
    }


    اینم توی فرم لود فرم 1 قرار بده .

            private void Form1_Load(object sender, EventArgs e)
    {
    Form2 frm = new Form2();
    frm.ShowDialog();
    }

  16. #16
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    1. وقتی USER و PASS را اشتباه وارد می کنم؛ اول پیغام "bye bye " میده، بعد پیغام "invalid user & pass" میده و بعدشم فرم اصلی باز میشه.
    خب خودتون توی کد اول گفتید اگه یوزر و پسوورد اشتباه بود پیغام "bye bye " را بده . وقتی این پیغام داده میشه برنامه خاتمه پیدا میکنه و فرم برنامه اصلی باز میشه و سپس کد Invalid username & password از فرم دوم اجرا میشه و چون شما گفتید اگه DialogResult اوکی شد this.ShowDialog(); اجرا بشه . و چون DialogResult در باعث اجرا شدن رویداد else شده توی ShowDialog خطا میگیره .

    2. اگر user و pass را درست وارد کنم؛ یکبار دیگه صفحه login باز میشه و بعد از login کردن مجدد، این پیغام خطا را میده.(پیغام خطا را ضمیمه کردم).
    خودتون توی کد اول گفتید اگه پسوورد و یوز درست بود دوباره این صفحه نمایش داده بشه . در حالی که باید بگید این صفحه را ببند .

  17. #17
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط mahdi_7610 مشاهده تاپیک
    خب اونی که من توی پست #12 گفتم با اینی که دوستمون برمودا گفتن چه فرقی میکنه ؟
    من در پست 12 به این دقت نکردم که نوشتید form2.showdialog ، چون من خودم از این کدها استفاده کرده بودم ولی به جای showdialog از show استفاده کرده بودم و با run کردن برنامه، هر دو تا فرم با هم باز می شد ولی الان درست شد. مرسی.
    فقط چند تا سوال داشتم که اگه جواب بدی ممنون میشم.
    1. چرا دیگه از this.hide در form1_load استفاده نکردی؟
    2. چرا با اینکه در program.cs نوشتم form1 ولی اول (form2(login باز میشه؟! در صورتی که Mr.bermooda گفت باید از this.hide استفاده کنیم تا ابتدا فرم 2 باز بشه، ولی الان بدون استفاده از this .hide ، این اتفاق می افته!
    3. چرا از این استفاده نکردی؟

    if (textBox1.Text.Trim() == "admin" && textBox2.Text.Trim() == "1234")
    {
    this.DialogResult = DialogResult.OK;
    }


    4.اینا چین؟!

    MessageBoxButtons
    .OK, MessageBoxIcon.Warning

    هزارن بار ممنون

  18. #18
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: ترتیب اجرای فرمها

    1. چرا دیگه از this.hide در form1_load استفاده نکردی؟
    خوب کاملا مشخصه . به خاطر این که من گفتم Form2 را ShowDialog کن . به خاطر همین دیگه نیازی نیست form1 را this.hide کنیم .

    2. چرا با اینکه در program.cs نوشتم form1 ولی اول (form2(login باز میشه؟! در صورتی که Mr.bermooda گفت باید از this.hide استفاده کنیم تا ابتدا فرم 2 باز بشه، ولی الان بدون استفاده از this .hide ، این اتفاق می افته!
    دلیلش را توی سوال اول گفتم . چون ShowDialog که میکنیم خودش اون فرم را hide می کنه .

    3. چرا از این استفاده نکردی؟
    به خاطر این که این دستور میگه اگه یوز و پسوورد درست بود یک پیغام نمایش داده بشه . در صورتی که شما اصلا بهش پیغامی تعریف نکردید . و اصلا نیازی به اون نداریم . ما میخواهیم در صورت درست بودن پسورد و یوزر این فرم بسته بشه و فرم برنامه باز بشه . به خاطر همین باید بنویسیم this.close()

    4.اینا چین؟!
    اینا باعث میشن وقتی کاربر پسوورد و یوزر را اشتباه وارد کرد یک پیغام بهش نمایش داده بشه . این کدها هم باعث میشن توی اون پیغامی که نمایش داده میشه یک ایکون اخطار و یک دکمه ok برای تائید نمایش دهده بشه .

    موفق باشی

  19. #19
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    این روش استفاده از قایم کردن و نشان دادن فرم که از یک منطق یکراست برایه پیاده شدن استفاده نمیکند را چرا به یک روشی که علنی منطق کارکردن برنامه را بازگوئی میکند ترجیح میدید؟
    بدانه عرض جسارت ولی نمیدانم چجوری بگم، اینکار یکمی انحرافی است. ولی اگر مزایایی دارد که من قابل به درکش نیستم، لطفا به دریابی من که اینکه چرا از روشی که (به نظر من) صریحاً منطق برنامه را بازگو نمیکند استفاده میکنید را کمک کنید.
    لطفا اینکه از این روش انتقاد میکنم را به خود نگیرید، من دارم از روش انتقاد میکنم نه از کسانی که ازش استفاده میکنند.
    با احترام

  20. #20
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط اَرژنگ مشاهده تاپیک
    این روش استفاده از قایم کردن و نشان دادن فرم که از یک منطق یکراست برایه پیاده شدن استفاده نمیکند را چرا به یک روشی که علنی منطق کارکردن برنامه را بازگوئی میکند ترجیح میدید؟
    بدانه عرض جسارت ولی نمیدانم چجوری بگم، اینکار یکمی انحرافی است. ولی اگر مزایایی دارد که من قابل به درکش نیستم، لطفا به دریابی من که اینکه چرا از روشی که (به نظر من) صریحاً منطق برنامه را بازگو نمیکند استفاده میکنید را کمک کنید.
    لطفا اینکه از این روش انتقاد میکنم را به خود نگیرید، من دارم از روش انتقاد میکنم نه از کسانی که ازش استفاده میکنند.
    با احترام
    سلام آقای آرژنگ!
    بازم یک جای کار مشکل داره.
    همه دوستانم مطالب خیلی خوبی گفتن، ولی همش مشکل پیش میاد.
    الان فهمیدم، حتی اگر pass,user را اشتباه وارد کنم یا اصلا وارد نکنم، اگر فرم login را ببندم، به هر حال فرم اصلی باز میشه!!!!!!!!!!!!!
    یه راهه اساسی و غیر انحرافی به من بگید. مرسی مرسی مرسی

  21. #21
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    سلام آقای آرژنگ!
    بازم یک جای کار مشکل داره.
    همه دوستانم مطالب خیلی خوبی گفتن، ولی همش مشکل پیش میاد.
    الان فهمیدم، حتی اگر pass,user را اشتباه وارد کنم یا اصلا وارد نکنم، اگر فرم login را ببندم، به هر حال فرم اصلی باز میشه!!!!!!!!!!!!!
    یه راهه اساسی و غیر انحرافی به من بگید. مرسی مرسی مرسی
    https://barnamenevis.org/showth...t=88552&page=3

  22. #22
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط اَرژنگ مشاهده تاپیک
    این که دقیقا همون link توی پست2 هست.
    خب من اگه اینارو فهمیده بودم که دیگه الان اینجا نبودم.
    من این کدها رانمییییییییییییییییییییی ییییییییییفهمم.
    اصلا نمی دونم user control چیه؟!
    تا میام روی جواب هر کدوم از دوستا کار کنم و بفهمم چیه، وقتی به اشکال بر می خورم و سوال می پرسم، یکی دیگه از دوستان میاد و یک چیزه دیگه میگه، الانم که با این link بر گشتم سر خونه اول.
    من تا حالا با اینایی که شما میگید کار نکردم، از دو روز پیش دارم سوال می کنم و فردا هم باید پروژه را تحویل بدم، در حال حاضر نمی تونم هر دفعه روی یک مطلب جدید کار کنم، باید بعد از تحویل پروژم و با خیال آسوده روی راه های جدید پیشنهادی شما فکر کنم و بفهمم چیه.
    من الان میخوام فقط اشکالم توی آخرین پستم حل بشه، اونوقت دیگه سوالی ندارم.
    دوستای من، لطفا جوابی در راستای راه حلم بگید، در حال حاضر راه حل جدید نمییییخوام.
    یک دنیا ممنونم دوست جونا!

  23. #23
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    این که دقیقا همون link توی پست2 هست.
    خب من اگه اینارو فهمیده بودم که دیگه الان اینجا نبودم.
    من این کدها رانمییییییییییییییییییییی ییییییییییفهمم.
    اصلا نمی دونم user control چیه؟!
    تا میام روی جواب هر کدوم از دوستا کار کنم و بفهمم چیه، وقتی به اشکال بر می خورم و سوال می پرسم، یکی دیگه از دوستان میاد و یک چیزه دیگه میگه، الانم که با این link بر گشتم سر خونه اول.
    من تا حالا با اینایی که شما میگید کار نکردم، از دو روز پیش دارم سوال می کنم و فردا هم باید پروژه را تحویل بدم، در حال حاضر نمی تونم هر دفعه روی یک مطلب جدید کار کنم، باید بعد از تحویل پروژم و با خیال آسوده روی راه های جدید پیشنهادی شما فکر کنم و بفهمم چیه.
    من الان میخوام فقط اشکالم توی آخرین پستم حل بشه، اونوقت دیگه سوالی ندارم.
    دوستای من، لطفا جوابی در راستای راه حلم بگید، در حال حاضر راه حل جدید نمییییخوام.
    یک دنیا ممنونم دوست جونا!
    در مثالی که فرستادم اصلاً UserControl استفاده نشده.
    یک پروژه کامل برایه لگین است، فقط اجراش کنید کار میکند، مشکلتان چیه؟

  24. #24
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط اَرژنگ مشاهده تاپیک
    در مثالی که فرستادم اصلاً UserControl استفاده نشده.
    یک پروژه کامل برایه لگین است، فقط اجراش کنید کار میکند، مشکلتان چیه؟
    اونی که شما ضمیمه کردی،نه.
    یک لینک توی همون صفحه بود که از user control استفاده کرده بود.
    اون فایلی هم که شما ضمیمه کردی، get set داره، من فقط تعریف get set را تو دانشگاه بهمون گفتن تا حالا باهاش کار نکردم، نمی دونم واقعا واسه چی خوبه.
    الانم کدتون را گذاشتم توی برنامم ولی نمی فهمم بعضی جاهاش چیکار می کنه؟!
    مثلا در صورتیکه واسه باتن های ok ,cancel کد ننوشتید، پس چطوری کار می کنن؟!
    من باید خط به خط برنامه را توضیح بنویسم.
    مثلا این چیه؟ توی کلاس security

    if
    (Math.Abs(LoginMatch) + Math.Abs(PasswordMatch) == 0)

  25. #25
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    اونی که شما ضمیمه کردی،نه.
    یک لینک توی همون صفحه بود که از user control استفاده کرده بود.
    اون فایلی هم که شما ضمیمه کردی، get set داره، من فقط تعریف get set را تو دانشگاه بهمون گفتن تا حالا باهاش کار نکردم، نمی دونم واقعا واسه چی خوبه.
    الانم کدتون را گذاشتم توی برنامم ولی نمی فهمم بعضی جاهاش چیکار می کنه؟!
    مثلا در صورتیکه واسه باتن های ok ,cancel کد ننوشتید، پس چطوری کار می کنن؟!
    من باید خط به خط برنامه را توضیح بنویسم.
    مثلا این چیه؟ توی کلاس security

    if
    (Math.Abs(LoginMatch) + Math.Abs(PasswordMatch) == 0)
    get set همچین کار بخصوصی انجام نمیده، فقط برایه نگهداری پراپرتی هستش.

    اون خطی که میگید، تفاوت لگین و کمله عبور را با لگین و کلمه عبوری که کاربر وارد کرده جمع میزنه، اگر جمع مقدار مطلق تفاوتها صفر بود ، درست (ترو) جواب میفرسته، اگر هم که نه غلط (فالس) جواب میفرسته.

    باور کنید از این پروژه ساده‌تر نمیشه درست کرد، کارهای استادان در این تالار هست ولی اگر این پروژه ساده من برایه شما مکشل ایجاد میکند، کار بهتر استادان غیره قابل تفسیر است.

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

  26. #26
    VIP آواتار Amir Oveisi
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    هر جا که حال کنم - فعلا یزد
    پست
    2,604

    نقل قول: ترتیب اجرای فرمها

    تو اون قسمت کدی که گذاشته بودم که یه شرط بود، شما به جای if از while استفاده کنید که تا زمانیکه کاربر اطلاعات درست رو وارد نکنه دوباره فرم login نشون داده بشه.

    توضیح مهم:
    نمونه کد ها و یا توضیحاتی که در تمام تاپیک ها از بنده می بینید در حد یک hint هستند و الزاما بدون ایراد نخواهند بود و نتیجه گیری کلی به عهده حود شما می باشد.

    موفق باشید

  27. #27

    نقل قول: ترتیب اجرای فرمها

    دوست عزیز من این کار رو میکنم.

    توی Load فرم اصلی فرم Login رو بصورت ShowDialog باز میکنم(اینجا میتونی فرم اصلی رو هم Hide کنی).
    بعد توی فرم Login اگه پسورد درست بود فرم رو Close میکنم و فرم main رو Show میکنم.
    اگر کاربر رمز را اشتباه وارد کرد و خواست کل برنامه رو ببنده از:
      Environment.Exit(0);

    استفاده میکنم.

    اینم یه نمونه برنامه:
    فایل های ضمیمه فایل های ضمیمه

  28. #28
    کاربر دائمی آواتار saeeedft
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    تهران
    پست
    320

    نقل قول: ترتیب اجرای فرمها

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

  29. #29
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: ترتیب اجرای فرمها

    سلام به همگی!
    مرسی بچه ها،من مشکلم با همون برنامه آقای ارژنگ حل شد.
    فقط یک نکته کوچیک واسه بهبود برنامه آقای ارژنگ می خواستم اضافه کنم، که اگر احتمالا کسی خواست از برنامه ای که آقای ارژنگ گذاشتن، استفاده کنه،می تونه در اون قسمت از کدی که در program.cs نوشته شده:

    if
    (passwordValid )
    {
    Application.Run(newForm1());
    }

    این شرط را هم اضافه کنه

    (dialogResult == DialogResult.OK)

    یعنی میشه:

    if (passwordValid & (dialogResult == DialogResult.OK))
    {
    Application.Run(newForm1());
    }

    چرا که وقتی کاربر روی دکمه cancel میزنه، مسلما از run کردن برنامه منصرف شده، پس دیگه نیازی به باز شدن فرم اصلی نیست.
    اما اگر شرطی که گفتم نباشه، چنانچه کاربر user ,pass را درست وارد کنه و بعد cancel را بزنه، باز هم فرم اصلی باز میشه.
    این نکته خیلی کوچیکی بود که به نظرم اومد بهتره بگم، هر چند که می دونم خیلی از دوستان این مورد را می دونستند.
    پیروز باشید.

  30. #30
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: ترتیب اجرای فرمها

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    سلام به همگی!
    مرسی بچه ها،من مشکلم با همون برنامه آقای ارژنگ حل شد.
    فقط یک نکته کوچیک واسه بهبود برنامه آقای ارژنگ می خواستم اضافه کنم، که اگر احتمالا کسی خواست از برنامه ای که آقای ارژنگ گذاشتن، استفاده کنه،می تونه در اون قسمت از کدی که در program.cs نوشته شده:

    if
    (passwordValid )
    {
    Application.Run(newForm1());
    }
    این شرط را هم اضافه کنه

    (dialogResult == DialogResult.OK)
    یعنی میشه:

    if (passwordValid & (dialogResult == DialogResult.OK))
    {
    Application.Run(newForm1());
    }
    چرا که وقتی کاربر روی دکمه cancel میزنه، مسلما از run کردن برنامه منصرف شده، پس دیگه نیازی به باز شدن فرم اصلی نیست.
    اما اگر شرطی که گفتم نباشه، چنانچه کاربر user ,pass را درست وارد کنه و بعد cancel را بزنه، باز هم فرم اصلی باز میشه.
    این نکته خیلی کوچیکی بود که به نظرم اومد بهتره بگم، هر چند که می دونم خیلی از دوستان این مورد را می دونستند.
    پیروز باشید.
    با تشکر بسیار،
    از اینکه اشکال را گفتید خیلی خوشحال شدم ،بالاخره یکی اشکال ما را بهمان میگه،
    نکته‌ای که گفتید کاملا درست است نشان میده را موارد بسیار ساده هم میشه اشتباه کرد، اگرچه پیدا کردن این اشکال ساده نیست!!
    یک چیزی که همیشه فکرم را مشغول میکنه این است که در این چنین مواردی بهتر است که از این نوع کد استفاده بشه :
                if (dialogResult!= DialogResult.OK) return;
    if (passwordValid)

    یا از همان کد شما:
    if (passwordValid & (dialogResult == DialogResult.OK))

    اگرچه منتقاً هر دو یک چیز هستند، ولی اولیش اینکه دیگر احتیاج به ادامه دادن نیست را صریحا اعلام میکنه، من نمیدانم از لحاظ خوانائی کد کدام بهتر است (من فکر میکنم اولی ولی برایه اینکه همه شرائط و پیشروی را از هم جدا نگه میداره، از یک حالت ساده‌تر به نظر میاد).

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

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