PDA

View Full Version : حرفه ای: بسته شدن فرم با کلید Esc



zare69
شنبه 26 اسفند 1391, 07:35 صبح
دوستان سلام
من می خوام هر فرمی از برنامه هستم با زدن دکمه Esc اون فرم بسته بشه،آیا راهی برای اینکار هست که من یکی یکی از فرم هامو بازنکنم و رویداد Keypress را صدا نزنم.
آیا راحل بهتری هست؟چطوری؟
با تشکر

bazardeh
شنبه 26 اسفند 1391, 07:39 صبح
سلام دوست عزیز
لینک زیر به دردت میخوره
قبل از ایجاد تاپیک یه جستجو کن

لینک (http://barnamenevis.org/showthread.php?314665-3-%D8%B1%D8%A7%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%B3%D8%AA%D9%86-%D9%81%D8%B1%D9%85-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%AF%DA%A9%D9%85%D9%87-ESC&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?230535-%DA%A9%D8%AF%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%DA%A9%D9%85%D9%87-ctrl-Esc&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?168600-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%81%D8%B1%D9%85-%D8%AA%D9%88%D8%B3%D8%B7-%DA%A9%D9%84%DB%8C%D8%AF-Esc&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?167995-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%81%D8%B1%D9%85-%D8%AA%D9%88%D8%B3%D8%B7-Esc&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?152886-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%81%D8%B1%D9%85-%D9%87%D8%A7-%D8%A8%D8%A7-Esc&highlight=esc)

موفق باشی

zare69
شنبه 26 اسفند 1391, 08:09 صبح
سلام دوست عزیز
لینک زیر به دردت میخوره
قبل از ایجاد تاپیک یه جستجو کن

لینک (http://barnamenevis.org/showthread.php?314665-3-%D8%B1%D8%A7%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%B3%D8%AA%D9%86-%D9%81%D8%B1%D9%85-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%AF%DA%A9%D9%85%D9%87-ESC&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?230535-%DA%A9%D8%AF%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%DA%A9%D9%85%D9%87-ctrl-Esc&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?168600-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%81%D8%B1%D9%85-%D8%AA%D9%88%D8%B3%D8%B7-%DA%A9%D9%84%DB%8C%D8%AF-Esc&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?167995-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%81%D8%B1%D9%85-%D8%AA%D9%88%D8%B3%D8%B7-Esc&highlight=esc)
لینک (http://barnamenevis.org/showthread.php?152886-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%81%D8%B1%D9%85-%D9%87%D8%A7-%D8%A8%D8%A7-Esc&highlight=esc)

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

bazardeh
شنبه 26 اسفند 1391, 08:16 صبح
دوست عزیز
اگر منظور شما اینه روی فرم مین بنویسی ، به نظر من خیلی سخته چون

وقتی فرم جدید ظاهر میشه فوکوس رو فرم جدید میره و دکمه هایی که هم فشرده میشه برای اونه نه فرم مین
پس شما باید کدها رو برای هر فرم بنویسی
این نظر منه و شاید هم بشه که من بلد نیستم کمکتون کنم :لبخند:

keyvan_s89
شنبه 26 اسفند 1391, 08:49 صبح
یه کار میتونی بکنی
تویه هر فرمی که میخای با esc بسته بشه یه دکمه بزار و توش کد بسته شدن فرم رو بنویس.
بعد اون دکمه رو Visible=false کن بعد تویه خصوصیات اون فرم CancelButton رو بزار رویه همون دکمه که کد خارج شدن رو توش نوشتی.
حالا با زدن ESC فرم بسته میشه.!

bazardeh
شنبه 26 اسفند 1391, 08:51 صبح
یه کار میتونی بکنی
تویه هر فرمی که میخای با esc بسته بشه یه دکمه بزار و توش کد بسته شدن فرم رو بنویس.
بعد اون دکمه رو Visible=false کن بعد تویه خصوصیات اون فرم CancelButton رو بزار رویه همون دکمه که کد خارج شدن رو توش نوشتی.
حالا با زدن ESC فرم بسته میشه.!

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

keyvan_s89
شنبه 26 اسفند 1391, 08:51 صبح
برای اینکه تویه تک تک فرم هات هم نخای دکمه بزاری میتوی از Seneder استفاده کنی.

zare69
شنبه 26 اسفند 1391, 08:52 صبح
ممنون خودم هم چیز خاصی مد نظرم نیست فقط خواستم نظر سنجی کنم.مثلا میشه با ساختن یه سرویس اینکارو کرد یا همچین چیزای.
شما درست میگید با نوشتن تو فرم اصلی نمیشه اینکارو کرد

zare69
شنبه 26 اسفند 1391, 08:55 صبح
برای اینکه تویه تک تک فرم هات هم نخای دکمه بزاری میتوی از Seneder استفاده کنی.
ممنون از اهنمایتون
اصلش اینکه من نمیخوام تمام فرم هامو یکی یکی باز کنم و کدها رو ست کنم

RED-C0DE
شنبه 26 اسفند 1391, 18:23 عصر
یک فرم تعریف کن ک فقط یک فرم سادست
توی این فرم،‌کاری ک می خوای بکنی (بسته شدن فرم با کلید ESC) رو پیاده کن
بقیه فرمهات رو از این ارث ببر

C#‎_best_Programmer
شنبه 26 اسفند 1391, 20:03 عصر
داشم تو رویداد کی پرس فرم باید بنویسی


if(e.keychar==convert.toint32(keys.esc)
{
thiis.close()
}

sgh_programer
شنبه 26 اسفند 1391, 20:56 عصر
سلام به همه دوستان

ابتدا خاصیت keypreview=true کن(از فرم)
101552

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

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode==Keys.Escape)
{
this.Close();
}
}

البته اگه منظورتو نو درست متوجه شده باشم


همگی موفق باشید