PDA

View Full Version : مشکلم رو close خود فرم هست .



RIG000
دوشنبه 07 تیر 1389, 19:28 عصر
سلام بچه ها . یه سوال من راستش تو یه برنامه ای که دارم مینویسم میخام close خود فرم کنا ر maximaize رو میگم اون رو غیر فعال یا اینکه اگه ببندمش بسته بشه ( توضیح : اینی که میگم بسته بشه بخاطر اینکه این فرم 2 هستش چون فرم اولم فرم لاگین هست و وقتی لاگین میشم این فرم باز میشه و وقتی میخام بیام بیرون از برنامه رو ضرب در (close ) کلیک میکنم این فرم بسته میشه (فرم دو) ولی برنامه از حالت اجرا خارج نمیشه:افسرده:

mmd2009
دوشنبه 07 تیر 1389, 19:36 عصر
با سلام

اگر می خواهی فرم اصلی ( مادر ) برنامت وقتی روش close کردی بسته نشه و برنامه خروج نکنه فقط کافیه تو رویداد FormClosing کد زیر رو بزنی




e.Cancel = true;



اگه منظورت یه چیز دیگست بگو تا اگه بلد بودم کمکت کنم

mahdi87_gh
دوشنبه 07 تیر 1389, 20:05 عصر
در رویداد Form_closed مربوط به قرم2 کد زیر رو بنویسید

Application.Exit();

RIG000
دوشنبه 07 تیر 1389, 20:07 عصر
ببین من میخام فرم دوم من این قابلیت رو داشته باشه . که فرم اصلی من هست اما فرم اولی لاگین هست . من فرم دو رو میخام یه بلایی سرش بیارم

RIG000
دوشنبه 07 تیر 1389, 20:12 عصر
مرسی اما جفت کد ها رو امتحان کرده بودم جواب نمیده . e.Cancel = true;
با هم فرم بسته شد.
Application.Exit();
جواب نمیده.
بچه ها ببینین فرم دو بسته میشه اما من میخام فرم دو رو بستم فرم 1 منم بسته شه

RIG000
دوشنبه 07 تیر 1389, 20:13 عصر
یا اینکه اصلا علامت close فرم دو یه جوری دمشو ببینمیم

mmd2009
دوشنبه 07 تیر 1389, 20:16 عصر
دوست عزیز شما 2 تا فرم داری که یکی لوگین هستش و دیگری فرم اصلی برنامت

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

اگه منظورت اینه از کد زیر استفاده بکنید تو رویداد form_closing فرم اصلیت




Application.OpenForms["نام فرد لوگین"].Close();

RIG000
دوشنبه 07 تیر 1389, 20:28 عصر
اقا من برنامه رو میزارم ببینین لطفا "
http://rapidshare.com/files/403579689/Copy_of_m2rmobile1.rar.html

mahdi87_gh
دوشنبه 07 تیر 1389, 20:40 عصر
با کدی که گفتم همه فرمهای برنامه باید بسته شه. مگر اینکه شما از اون دستور e.cancel=true; استفاده کرده باشید. اون رو حذف کنید

RIG000
دوشنبه 07 تیر 1389, 21:09 عصر
برادران عزیز برنامه رو ببینین فرم 2 بسته میشه و لی فرم لوگین هم بسته هستش اما برنامه از اجرا در نمیاد

mahdi87_gh
دوشنبه 07 تیر 1389, 21:20 عصر
دوست عزیز من همون کدی رو که گفته بودم و کاملا هم از اسم تابعش واضحه که چیکار میکنه، امتحان کردم روی برنامه شما. کاملا درست عمل میکنه. متاسفانه نمی دونم چرا زحمت امتجان کردن رو بخودتون نمیدین!! منکه مشکل ندارم، شمایی که مشکل داری، وقتی دوستان لطف میکنن و راهنمایی می کنن، شما هم به خودتون زحمت بدین و کد رو تست کنین!!!

RIG000
سه شنبه 08 تیر 1389, 00:32 صبح
برنامه رو هنوز ندیدم دوست من من اون کد هایی که گفته بودین رو انجام داده بودم حالا نگاه میکنم شما چیکار کردین اگه درست شده باشه واقعا ممنون میشم

ehsanara
سه شنبه 08 تیر 1389, 00:38 صبح
آقا شما فرم اصلیت رو فرم اول قرار بده ، زمانی که برنامه اجرا شد فرم لاگین از طریق فرم اصلی فراخوانی شه ، اینطوری هم امنیت بیشتر میشه هم اینکه فرم اصلیت رو ببندی برنامه بسته میشه
می تونی توی Program.Cs بری و توی Application.Run اسم فرمی که میخوای اول باز شه رو بزاری بدی
توی کد خروج لاگین هم اینو بنویس



this.Close();
this.CancelButton = this.exitbtn;
Environment.Exit(1);

RIG000
سه شنبه 08 تیر 1389, 00:42 صبح
برادر مهدی شما که پسورد رو از کار انداختی اینجوری که که خوددمم میتونستم زحمتی نبود . اواسه شما رو dl کردم کل لاگین رو برداشتین یعنی عملا"....هیچی

ehsanara
سه شنبه 08 تیر 1389, 00:57 صبح
روشی که گفتم رو امتحان کن مطمئن باش جواب میده
من خودم برنامه هام رو اینطوری مینویسم

RIG000
سه شنبه 08 تیر 1389, 08:23 صبح
برادر متاسفانه جوا ب نداد واسه همین پروژه رو گذاشتم تا شما ببینید و مشکل رو حل کنید ازتون ممنونم که کمک میکنید اما رو خد کدتون
this.Close();
this.CancelButton = this.exitbtn;
Environment.Exit(1);
مشکل میگیره

exlord
سه شنبه 08 تیر 1389, 09:52 صبح
private void frmMain_FormClosing(object sender, FormClosingEventArgs e)
{
Application.Exit();
}
یه بار Rebuild کن درست میشه .... الان داره برا من کار میکنه ....

غلامرضا شریفی
سه شنبه 08 تیر 1389, 10:42 صبح
در vb از كد زير استفاده ميشود

me.end
ولي اگر در #c بجاي me از this استفاده شود فكر كنم درست شود

super_sonic
سه شنبه 08 تیر 1389, 10:50 صبح
آقا چرا سختش ميكنيد؟
من براي فرم لاگين اين كارو ميكنم كه كلا control box از بين بره
checkbox=false;
يا از خصوصيات فرم مقدارش رو false كن بعد براي فرمت يه دگمه خروج بزار.

mahdi87_gh
سه شنبه 08 تیر 1389, 11:35 صبح
برادر مهدی شما که پسورد رو از کار انداختی اینجوری که که خوددمم میتونستم زحمتی نبود . اواسه شما رو dl کردم کل لاگین رو برداشتین یعنی عملا"....هیچی
دوست عزیز پسورد که ربطی به خروج از برنامه نداره!! شما پسورد رو دربانک چک میکنید و دکمهای رو فعال میکنید.بعد از درست وارد شدن پسورد این فرم رو مخفی می کنید و فرم اصلی رو نمایش میدید.

یه بار Rebuild کن درست میشه .... الان داره برا من کار میکنه ....
بله. منم rebuild کردم تا درست شد

RIG000
سه شنبه 08 تیر 1389, 14:44 عصر
با rebuild درست شد واقعا از همتون ممنونم تاپیک پر محتوایی شد چیز هایی یاد گرفتم . از کسانی که جواب دادن ممنونم البته از بقیه نوشته ها هم استفاده میکنم. از همتون ممنونم.